.Net開發Windows服務

2018-08-23 根據別人的整理windows

開發Windows服務

1、 開發Windows服務spa

1 新建項目,選擇Windows服務,以下圖:設計

 

 

2 建立好後,編譯器會自動建立一些文件,其中會有一個Service1類文件,該文件是服務的關鍵,咱們能夠將其重命名,這裏我將其命名爲MainService,以下圖:blog

 

 

3 MainService的後臺代碼中會自動建立一些方法,包括服務的啓動和中止方法等,以下圖:ip

 

 

 

4 將服務啓動時要執行的操做放在OnStart方法中,服務中止時要執行的操做放在OnStop方法中開發

5 MainService.cs設計器中,單擊郵件,選擇選擇添加安裝程序,便會生成一個ProjectInstaller.cs的文件,如圖所示:cmd

 

 

6 設置ProjectInstaller.cs的屬性,切換到屬性設置界面編譯器

1 選擇serviceInstaller1,並設置相應屬性以下圖所示:io

 

 

其中:Description屬性用於設置服務安裝以後再服務界面上顯示的描述信息編譯

      DisplayName屬性用於設置服務安裝以後再服務界面上顯示的服務名稱;

      ServiceName屬性用於設置服務的名稱,此名稱必須與ServiceBase類的ServiceName屬性設置的名稱一致,該名稱用於系統標識此服務,能夠理解成DisplayName爲ServiceName的別名;

      StartType屬性用於設置服務的啓動方式。

2 選擇serviceProcessInster1,設置其屬性以下:

 

 

此處主要設置Account屬性,該屬性用來指示運行該服務時的帳戶類型,通常設置爲LocalSystem

7 到此步一個簡單的windows服務就建立好了,編譯程序會生成一個EmailService.exe的可執行文件,接下來即是安裝服務了。

2、Windows服務的安裝

命令安裝

-------------------------------------此處爲本身命令安裝成功------------------------------------------------------------------

管理員身份運行cmd

服務 安裝:sc create 服務名 binpath= 「D:\ 服務exe文件地址\須要安裝的服務.exe」  displayname= "服務顯示名稱" start= "auto"

服務刪除 sc delete 服務名

給服務添加描述: sc description 服務名 「具體服務名稱」

------------------------------------如下方法未試-------------------------------------------------------------------

Windows服務的安裝有多種方式,好比能夠再cmd下調用命令來安裝,也能夠寫一個安裝程序來安裝,此處介紹使用bat批處理來安裝。

1 安裝Windows服務須要用到InstallUtil.exe程序,該程序位於:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319 .NET4.0

C:\Windows\Microsoft.NET\Framework64\v2.0.50727 .NET2.0

2 咱們能夠再批處理命令中直接調用以上目錄中的InstallUtil.exe程序,也能夠將該程序拷貝到應用程序的目錄下,此處我選擇獎該程序拷貝到應用程序的目錄下,同時將批處理文件也建立在應用程序的的目錄下,以下圖所示:

 

3 註冊服務的批處理命令以下所示:

%~dp0\InstallUtil.exe %~dp0\EmailService.exe

Net Start EmailService  --這裏是安裝完成以後啓動服務

sc config EmailService start= auto –這裏是將服務設置爲自動啓動

pause

其中%~dp0表示批處理所在的目錄

4 註銷服務的批處理命令以下所示:

%~dp0\InstallUtil.exe /u %~dp0\EmailService.exe

pause

5 啓動服務的批處理命令以下所示:

net start EmailService

pause

6 中止服務的批處理命令以下所示:

net stop EmailService

pause

7 當咱們運行註冊服務批處理命令以後便會進行服務安裝,若是安裝成功,咱們在服務界面將看到該服務,以下圖所示:

 

8 安裝服務時的注意事項

1 安裝程序InstallUtil.exe的版本必須於建立Windows服務的.NET版本一致;

2 若是是Win7以上版本的系統,在運行批處理命令時,應以管理員身份運行;

3 若是是Win7以上版本的系統,應特別注意安裝程序和應用程序的路徑,以便可以正確的寫批處理命令。

相關文章
相關標籤/搜索