c++ - winapi中哪个函数检查按钮是否正在关闭控制台?
问题描述
如果按下按钮关闭控制台,我希望显示消息 winapi 中的哪个函数检查按钮是否正在关闭控制台?
解决方案
在 Windows 上,控制台应用程序可用于SetConsoleCtrlHandler()
捕获CTRL_CLOSE_EVENT
通知:
当用户关闭控制台(通过单击控制台窗口的窗口菜单上的关闭,或单击任务管理器中的结束任务按钮命令)时,系统向连接到控制台的所有进程发送的信号
例如:
BOOL WINAPI MyHandlerRoutine(DWORD dwCtrlType)
{
if (dwCtrlType == CTRL_CLOSE_EVENT)
{
//...
}
return FALSE;
}
int main()
{
SetConsoleCtrlHandler(&MyHandlerRoutine, TRUE);
//...
SetConsoleCtrlHandler(&MyHandlerRoutine, FALSE);
return 0;
}
推荐阅读
- jenkins - 如何节省 VM 与代理之间的连接并在长管道步骤中继续
- apache-spark-sql - 在 Spark sql 中替换字符串中的空字符
- c# - 如何将 .Net 框架添加到 Visual Studio 预览版 2019 项目
- apache-spark - 火花列出叶文件失败,文件不存在
- ejb - 如何查看wildfly ejb dist缓存中的对象
- iis - 如何在 Azure Devops 管道中将 IIS Web 应用程序部署为文件夹而不是虚拟应用程序?
- conv-neural-network - Tensorflow 2.0 中 KerasLayer 的 TimeDistributed
- options - 一个 CoAP 数据包可以包含多少个选项?
- php - 无法从 Docker 应用程序连接到 Sphinx(全文搜索)
- mongodb - Mongodb更新重复数组值