【发布时间】:2015-02-07 04:30:36
【问题描述】:
我正在 Visual Studio 中开发 c++ 命令行项目。 我需要捕获应用程序关闭事件(在运行应用程序时使用 CTRL+Z 关闭应用程序或关闭命令行窗口)。
我的应用看起来像:
int main()
{
//crete app object, will open some files and run the code.
myApp app;
app.run();
getchar();
}
如果我如上所述明确关闭应用程序,myApp 析构函数将不会执行。所以我需要一些方法来在我的应用程序中捕获这个关闭事件(如 Qt 中的 QObject::closeEvent())。
提前致谢。
【问题讨论】:
-
好像在windows上扔了一个
CTRL_CLOSE_EVENT,here可能对你有帮助。 -
Ctrl+Z 只是意味着结束 STDIN 并关闭句柄。之后它的作用完全是特定于应用程序的。要关闭命令窗口,请参阅@JeffreyBencteux 发布的链接。
-
atexitfunction 指定程序正常终止时不带参数自动调用的函数。
标签: c++ visual-studio-2010 qt command-line command-prompt