我发布了类似的类似查询Link to my previous post.
我仍然需要对此主题进行更多澄清,
1)一旦用户试图停止Windows服务,我可以使用“WTSSendMessage”显示警告消息吗? (在所有版本的Windows(XP,VISTA,7)中)。
2)如果无法使用上述方法,“我可以在计算机的sysyem托盘中显示警告消息”
谢谢..
答案 0 :(得分:1)
一旦用户尝试停止Windows服务,是否可以使用
WTSSendMessage
显示警告消息?
是的,你可以。 MSDN文档Service Changes for Windows Vista说明了这一点(强调我的):
服务始终在会话0中运行。在Windows Vista之前,第一个登录用户也被分配到会话0.现在,会话0专门用于服务和其他与交互式用户会话无关的应用程序。 (第一个登录用户连接到会话1,第二个登录用户连接到会话2,依此类推。)会话0不支持与用户交互的进程。 此更改意味着服务无法向应用程序发布或发送消息,并且应用程序无法向服务发送或发送消息。此外,服务无法直接显示用户界面项(如对话框)。 服务可以使用WTSSendMessage函数在另一个会话中显示对话框。