一、創建一個Windows Service
我的IDE開發工具使用的是vs2019,和之前的vs版本不大相同,所有添加了詳細的截圖說明。
首先,選擇新建項目,項目類型選擇服務。
之后,選擇Windows 服務(.NET Framework)
然后,修改項目名稱,這里我們重命名為EmailService
然后點擊創建,進行創建新項目。
二、創建服務安裝程序
首先來看下新建好的程序目錄
接下來,我們對Service1重命名,重命名為mEmailService
2.1 添加安裝程序
然后點擊mEmailService.cs,鼠標右鍵出彈窗,點擊添加安裝程序。
之后程序就會自動安裝並出現以下文件,如·下圖所示:
2.2 修改安裝服務名
右鍵serviceInsraller1,選擇屬性,將ServiceName的值改為mEmailService。
屬性中需要修改的項目如下圖所示:
2.3 修改安裝權限
右鍵serviceProcessInsraller1,選擇屬性,將Account的值改為LocalSystem。
三、寫入服務代碼
右鍵mEmailService,選擇查看代碼。也可以雙擊空白區域,也能出現代碼區。
這時候會出現以下代碼:

1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Data; 5 using System.Diagnostics; 6 using System.Linq; 7 using System.ServiceProcess; 8 using System.Text; 9 using System.Threading.Tasks; 10 11 namespace EmailService 12 { 13 public partial class mEmailService : ServiceBase 14 { 15 public mEmailService() 16 { 17 InitializeComponent(); 18 } 19 20 /// <summary> 21 /// 服務啟動代碼 22 /// </summary> 23 /// <param name="args"></param> 24 protected override void OnStart(string[] args) 25 { 26 //TODO 27 } 28 29 /// <summary> 30 /// 服務停止代碼 31 /// </summary> 32 protected override void OnStop() 33 { 34 //TODO 35 } 36 } 37 }
四、創建安裝腳本
在項目中添加2個文件如下(必須是ANSI或者UTF-8無BOM格式):
4.1 安裝腳本Install.bat 【注意對應關鍵字】
代碼:

1 %SystemRoot%\Microsoft.NET\Framework\v4.0.30319\installutil.exe %~p0EmailService.exe 2 Net Start mEmailService 3 sc config mEmailService start= auto
4.2 卸載腳本Uninstall.bat 【注意對應關鍵字】
代碼:

1 %SystemRoot%\Microsoft.NET\Framework\v4.0.30319\installutil.exe /u %~p0EmailService.exe
4.3 安裝腳本說明
第二行為啟動服務。
第三行為設置服務為自動運行。
這2行視服務形式自行選擇。
4.4 腳本調試
如果需要查看腳本運行狀況,在腳本最后一行加入pause
5 以管理員身份CMD注冊,避免沒有操作權限
在命令行里定位到InstallUtil.exe所在的位置
命令:cd C:\Windows\Microsoft.NET\Framework\v4.0.30319
安裝服務命令
命令 :InstallUtil.exe Path\ZdwWindowsService.exe
其中 Path指路徑
成功之后就可以在服務中看到你剛剛新建的服務了。