如何跟踪mfc应用程序何时关闭?

时间:2012-10-22 05:32:41

标签: visual-c++ mfc

是否可以跟踪mfc应用程序何时终止?我想跟踪我的mfc应用程序何时终止,以便我可以在终止时显示任务栏。

CWnd* pWnd = CWnd::FindWindow("Shell_TrayWnd", "");
pWnd->ShowWindow(SW_HIDE);

以上代码行用于显示和隐藏任务栏窗口。我想知道是否有可能跟踪任务管理器。

3 个答案:

答案 0 :(得分:0)

如果是MFC应用程序,请使用CWinApp::ExitInstance覆盖来完成应用程序终止清理。

如果您要编写应用程序来监控应用程序终止(例如正确关机或崩溃),您可以使用互斥锁。这里描述了一个很好的例子:

Best way to detect an application crash and restart it?

答案 1 :(得分:0)

为什么要隐藏任务栏?隐藏任务栏是错误和粗鲁的。为什么?因为你不拥有它。任务栏由系统管理并拥有用户;如果用户希望隐藏它,他会自己隐藏它。

就像你不去'隐藏'你不拥有的汽车一样,你不应该隐藏你不拥有的窗户。

如果没有别的,如果您的应用程序崩溃,用户被搞砸了,很可能会被迫注销,然后重新启动以恢复他们的任务栏。

如果您需要全屏应用,请使用可用功能&编写全屏应用。蜜蜂。如果你在VS2010上,后来考虑使用http://msdn.microsoft.com/en-us/library/cc308980.aspx中记录的CFullScreenImpl。

或者在StackOverflow上查看此信息:How to create full screen window with MFC?

Google快速搜索还显示了此CodeProject链接:http://www.codeproject.com/Articles/9632/Views-in-Full-Screen-Mode

答案 2 :(得分:-1)

使用NOTIFYICONDATA结构和相关的api来跟踪