Qt 5.1 Windows 7 - Windows 注销时未调用 aboutToQuit()
Posted
技术标签:
【中文标题】Qt 5.1 Windows 7 - Windows 注销时未调用 aboutToQuit()【英文标题】:Qt 5.1 Windows 7 - aboutToQuit() not called on windows logoff 【发布时间】:2013-12-06 16:14:50 【问题描述】:如果我正常退出我的应用程序,则会调用 aboutToQuit 并且我可以进行一些清理,但是,如果用户从 Windows 注销,我的应用程序会立即关闭并且永远不会调用 aboutToQuit。
该程序用作登录到服务器的应用程序启动器。每次启动应用程序时,它都会向具有名称的服务器发送一条消息(您从我的应用程序中启动该应用程序)。
通常,用户完成后会关闭应用程序并记录事件。如果他们关闭计算机,我想在 aboutToQuit 中发送应用程序的关闭日志事件,但该函数永远不会被调用。
我已经搜索了选项,但没有将我的应用程序变成 Windows 服务(还没有尝试过),没有任何效果。
有什么想法吗?
【问题讨论】:
是否至少发出了QApplication::commitDataRequest()
或QApplication::saveStateRequest()
信号?
不,看起来两者都没有发出。
【参考方案1】:
这似乎在 Qt5.2.0 中得到修复,因为我现在在 Windows 注销时收到 QApplication::commitDataRequest() 信号。
【讨论】:
以上是关于Qt 5.1 Windows 7 - Windows 注销时未调用 aboutToQuit()的主要内容,如果未能解决你的问题,请参考以下文章