好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

C#使用windows服务开启应用程序的方法

本文实例讲述了C#使用windows服务开启应用程序的方法。分享给大家供大家参考。具体如下:

使用windows服务开启应用程序,会遇到如下问题

1.使用windows服务开启的应用程序不会显示应用程序界面
解决方法:当安装服务之后,选中服务,点击属性->登录,然后设置登录身份为本地系统账户,并允许服务与桌面进行交互

2.使用的是远程桌面进行查看,不会显示界面
解决方法:不能直接使用mstsc命令进入远程桌面,要使用mstsc /v:192.168.1.10 /admin命令 ,这里192.168.1.10 指的是服务器ip地址

?

//该函数是为了windows服务和桌面交互

private void serviceInstaller1_AfterInstall( object sender, InstallEventArgs e)

{

  base .OnAfterInstall(e.SavedState);

  ManagementObject wmiService = null ;

  ManagementBaseObject InParam = null ;

  try

  {

   wmiService = new ManagementObject( string .Format( "Win32_Service.Name='{0}'" , serviceInstaller1.ServiceName));

   InParam = wmiService.GetMethodParameters( "Change" );

   InParam[ "DesktopInteract" ] = true ;

   wmiService.InvokeMethod( "Change" , InParam, null );

  }

  finally

  {

   if (InParam != null )

    InParam.Dispose();

   if (wmiService != null )

    wmiService.Dispose();

  }

}

希望本文所述对大家的C#程序设计有所帮助。

dy("nrwz");

查看更多关于C#使用windows服务开启应用程序的方法的详细内容...

  阅读:82次