【问题标题】:How can I send keys to background process?如何将密钥发送到后台进程?
【发布时间】:2013-02-17 07:42:48
【问题描述】:

使用 C# 我想将 CTRL+C(中断)发送到我从服务(后台进程)运行的某个控制台进程,因为这似乎是终止它的唯一有效方法。

我该怎么做?

【问题讨论】:

  • 我的进程没有窗口,因为它从服务运行 - 还是我的错误?
  • 你使用 Process 类吗?因为你可以调用 Kill() 方法。否则发送“exit\n”不起作用?
  • 杀死它通常会导致图形驱动程序崩溃,正确的方法是使用CTRL+C。

标签: c# sendkeys


【解决方案1】:

您可以将简单的 WCF 服务添加到具有单一方法的控制台应用程序中: public void Kill()

在主服务中,您将拥有该服务的客户端,该客户端将在必要时调用“Kill”方法。 在该 Kill() 方法的实现中,您可以调用 System.Exit() 或执行后台进程所需的任何其他关闭操作。

【讨论】:

  • 我运行的进程是一个封闭的EXE文件,无法修改。
猜你喜欢
  • 2020-11-24
  • 2011-01-17
  • 2012-12-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多