在Windows C或C#中,您可以询问操作系统当前是否正在关闭/重新启
发布时间:2020-12-14 02:20:37 所属栏目:Windows 来源:网络整理
导读:我有一个在关机期间发生的问题.我有一段用C编写的代码,它包含在.dll中并注入到其他应用程序中.它做了很多事情,包括启动用C#编写的另一个应用程序(服务器). 但是,在启动关闭后,c代码启动C#应用程序,因为它已被关闭杀死,因为系统即将关闭而立即崩溃. 然后一个
我有一个在关机期间发生的问题.我有一段用C编写的代码,它包含在.dll中并注入到其他应用程序中.它做了很多事情,包括启动用C#编写的另一个应用程序(服务器).
但是,在启动关闭后,c代码启动C#应用程序,因为它已被关闭杀死,因为系统即将关闭而立即崩溃. 然后一个错误框停止关闭,直到用户处理它,这很烦人.有没有办法问操作系统,“嘿,你关闭/重启/退出了吗?”所以当发生这种情况时,我不会启动应用程序?我想两端的解决方案都没问题. ==编辑== 再澄清一点.作为注入的.dll运行的代码不能假设它注入的应用程序具有任何类型的“窗口”.此外,我想要一些我可以查询的东西,而不是我必须听的事件,因为我可能因为时间错过了那个事件.我想知道是否有任何类型的功能可以有效地给我这样的东西 bool IsSystemShutting(); 在这方面,C#选项对我和C选项都有用.但在.NET框架中,SystemEvents.SessionEnding和SystemEvents.SessionEnded都是事件与属性.我经常会在事件发生后报名参加此次活动,所以这对我来说没有好处. 解决方法
WM_ENDSESSION和
WM_QUERYENDSESSION消息适用于此方案.在启动关闭,重新启动或注销过程时,Windows会将这些窗口消息发送到窗口.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- windows-server-2008 – 强制Windows Server 2008使用旧版B
- 是否可以在Windows Azure中查看项目文件?
- typescript – Element隐式具有’any’类型,因为类型’Wind
- .net – 很少或很多小dll
- Dos命令获取当前时间
- microsoft-edge – 如何在Windows Store上发布Edge扩展?
- windows – 为什么Microsoft OneNote可以显示从中复制内容的
- 适用于Windows7 / 2012或更高版本的AOE Windows Server / T
- windows-server-2008 – 如何使用PowerShell脚本来更改SQL
- 根据windows下的iconv构建Haskell程序
推荐文章
站长推荐
热点阅读