程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#創建帶有界面交互的windows服務

C#創建帶有界面交互的windows服務

編輯:C#入門知識

C#創建windows服務默認是沒有交互界面的,form和console程序均無法顯示,但是可以在服務中打開桌面交互,開始>>運行>>services.msc>>選中你的windows服務>>右鍵點屬性>>登錄>>勾選允許服務與桌面交互,另外可以在服務的installer中添加AfterInstall事件響應:
   private void serviceInstaller_AfterInstall(object sender, InstallEventArgs e)
        {
            SetServiceDesktopInsteract(this.serviceInstaller.ServiceName);
        }

        /// <summary>
        /// 允許服務使用界面交互
        /// </summary>
        /// <param name="serviceName"></param>
        private void SetServiceDesktopInsteract(string serviceName)
        {
            ManagementObject wmiService = new ManagementObject(string.Format("Win32_Service.Name={0}", serviceName));
            ManagementBaseObject changeMethod = wmiService.GetMethodParameters("Change");
            changeMethod["DesktopInteract"] = true;
            ManagementBaseObject OutParam = wmiService.InvokeMethod("Change", changeMethod, null);
        }

      

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved