java 发送信号_java – 在Windows中发送任意信号?

如果你想要的是明确地/编程性地杀死任何类型的程序/进程,在SysInternals的pstools中有一个名为“pskill”的小工具,就像Unix“kill”一样。

如果你想要别的东西,请继续阅读(尽管下面的一些细节可能是错误的 – 自从我上次在C开发Windows程序之后,只使用WinAPI和Charles Petzold的“Windows编程”作为指导, )。

在Windows上,您没有正确的“信号”,WinMain和WinProc从操作系统接收的功能是简单的消息。例如,当您单击窗口的“X”按钮时,Windows会将该窗口的处理程序发送到WM_CLOSE消息。当窗口已删除但程序仍在运行时,它会发送WM_DESTROY。当它要离开主消息处理循环时,WinMain(不是WinProc)接收WM_QUIT。您的程序应该按照预期的方式回应所有这些 – 您可以通过在收到WM_CLOSE时不做任何操作来实际开发“不可关闭”的应用程序。

当用户从Windows任务管理器中选择任务并单击“结束任务”时,操作系统将发送WM_CLOSE(另一个我不记得)。如果您使用“结束进程”,则该进程将被直接杀死,不会发送任何消息(来源:The Old New Thing

我记得有一种方法可以获得另一个进程的HWND,一旦你得到另一个进程可以通过PostMessage和DispatchMessage函数向该窗口发送消息。

你可能感兴趣的:(java,发送信号)