系统托盘中的Windows服务消息

时间:2012-05-16 13:39:36

标签: c windows winapi service windows-services

我发布了类似的类似查询Link to my previous post.

我仍然需要对此主题进行更多澄清,

1)一旦用户试图停止Windows服务,我可以使用“WTSSendMessage”显示警告消息吗? (在所有版本的Windows(XP,VISTA,7)中)。

2)如果无法使用上述方法,“我可以在计算机的sysyem托盘中显示警告消息”

谢谢..

1 个答案:

答案 0 :(得分:1)

  

一旦用户尝试停止Windows服务,是否可以使用WTSSendMessage显示警告消息?

是的,你可以。 MSDN文档Service Changes for Windows Vista说明了这一点(强调我的):

  

服务始终在会话0中运行。在Windows Vista之前,第一个登录用户也被分配到会话0.现在,会话0专门用于服务和其他与交互式用户会话无关的应用程序。 (第一个登录用户连接到会话1,第二个登录用户连接到会话2,依此类推。)会话0不支持与用户交互的进程。   此更改意味着服务无法向应用程序发布或发送消息,并且应用程序无法向服务发送或发送消息。此外,服务无法直接显示用户界面项(如对话框)。 服务可以使用WTSSendMessage函数在另一个会话中显示对话框