如何优雅地关闭没有主窗口的其他程序?

时间:2018-02-04 10:15:21

标签: c#

我想关闭另一个没有主窗口的程序。 它在后台运行。

所以process.CloseMainWindow()不起作用, 使用process.kill()会丢失一些数据。

是否有一种优雅的方式来关闭此类程序而不会丢失数据,例如通过SendMessage或其他方式?

1 个答案:

答案 0 :(得分:0)

  

这只是一个小程序,在任务栏中放置托盘图标而不是Windows服务

在这种情况下,它必须有一个消息泵,因此您可以向进程发布Windows WM_QUIT消息。当目标进程处理它消息泵并遇到此消息时,它将正常退出。或者,您可以发布WM_CLOSE但是您需要知道哪个窗口(如果窗口不可见,它仍然有效)。