| 内容 | 这篇文章主要介绍了windows中允许服务与桌面交互的更改方法,需要的朋友可以参考下
 在Windows服务的安装类ProjectInstaller中加入以下方法:
 代码如下:
 protected override void OnCommitted(System.Collections.IDictionary savedState)
 {
 base.OnCommitted(savedState);
 //将服务更改为允许桌面交互模式
 ConnectionOptions coOptions = new ConnectionOptions();
 coOptions.Impersonation = ImpersonationLevel.Impersonate;
 ManagementScope mgmtScope = new System.Management.ManagementScope(@"rootCIMV2", coOptions);
 mgmtScope.Connect();
 ManagementObject wmiService;
 wmiService = new ManagementObject("Win32_Service.Name='这里是当前服务名'");
 ManagementBaseObject InParam = wmiService.GetMethodParameters("Change");
 InParam["DesktopInteract"] = true;
 ManagementBaseObject OutParam = wmiService.InvokeMethod("Change", InParam, null);
 }
 |