c - 如何判断我的 Windows 应用程序何时终止?

标签 c windows

当我的 Windows 程序 (C/C++) 被 Taskmgr.exe 杀死时,有什么方法可以收到通知吗?它似乎没有收到任何特殊的 Windows 消息 - 它只是终止。

我不想阻止它终止,我只想写一个它被手动终止的某种通知。

谢谢。

最佳答案

如果它是一个完整的 Windows 应用程序,您应该在应用程序退出之前在您的消息泵中获取 WM_QUIT。

如 MSDN 所述:http://msdn.microsoft.com/en-us/library/windows/desktop/ms632641(v=vs.85).aspx

这不会发布到窗口的消息队列中,您只能在主消息泵中检索它。

只有当它完全退出时才会出现这种情况。如果进程被终止,这永远不会发生。

您可以检测到它在下次启动时被杀死的一种方法是在启动时创建一个文件并在关闭时销毁,如果该文件在下次启动时仍然存在,您就知道该进程已被杀死,但是而不是它是由于错误还是由于用户请求而被杀死。

关于c - 如何判断我的 Windows 应用程序何时终止?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11985222/

相关文章:

javascript - 使用 JavaScript 开发 Windows 应用程序

c - 文件 CaesarShift 加密

c - 如何将结构体内部的空C结​​构体转换为Delphi?

c - system()函数打开一个窗口

windows - 如何在窗外画画?

windows - 如何向 linux 服务器进行身份验证(从 Windows 客户端)

linux - svn:此平台不支持符号链接(symbolic link) - Windows 8.1

c - "strlen(s1) - strlen(s2)"永远不会小于零

c++ - 哪个子树在 Avl 树删除中具有更高的优先级

c++ - 我应该在 Qt Creator 中更改什么以使用 MinGW 而不是 Microsoft 编译器进行编译