c#控制台相同的输出从多个批处理文件

本文关键字:批处理文件 输出 控制台 | 更新日期: 2023-09-27 18:02:40

我需要一个控制台应用程序来记录来自其他外部应用程序的一些事件。控制台应用程序的目的是在屏幕上显示外部应用程序在每个步骤中正在做什么。这个外部应用程序只能调用带有参数的exe。

的目标是:

  • 外部做一些工作
  • Ex呼叫控制台与参数显示
  • 外部做一些其他工作
  • Ex呼叫控制台与参数显示

但是控制台应用程序在每次调用时关闭或重新打开。我需要一个技巧,有一个控制台应用程序等待消息和显示它没有关闭,但我真的不知道现在从哪里开始看。

它可能是非常轻量级的解决方案,不需要任何安装。

谢谢。

编辑

外部应用程序(静默运行)只能在每一步执行命令"运行程序…"(命令行到带有参数的exe)。

在每一步,我必须发送给我的控制台应用程序一些信息写输出给用户和更多的东西。我想要一个唯一的输出,而不是一个新的控制台应用程序在每一步…

主要思想是有一个后台运行的控制台应用程序等待来自外部应用程序的消息来发送信息。

这是一种带有参数的启动控制台应用程序,不要停止它并召回相同的新参数,但我认为这是不可能的。

我不能在机器上安装工具,因为解决方案可能部署在我公司的许多设备上,我不能在每台设备上安装服务或数据库。

你会用什么样的解决方案?控制台应用程序可以等待传入消息并捕获它们吗?

c#控制台相同的输出从多个批处理文件

有许多不同的方法;

  • 进程间通信-在这里可能是多余的
  • 共享文件-简单但容易出错
  • 其他共享存储(数据库或消息服务)-可能是我推荐的方式

使用Database方法,应用程序将每个作业的"日志"插入到数据库表中。然后,Console应用程序可以使用一个简单的While循环进行循环,读取行并显示它们。这是更可伸缩的,因为您可以使用日志,例如,重新启动作业等。