用c#編寫window服務常見的幾個事件 protected int i = 0; public Service1() { InitializeComponent(); } //啟動服務時執行 protected override void OnStart(string[] args) { //使時
用c#編寫window服務常見的幾個事件
protected int i = 0;
public Service1()
{
InitializeComponent();
}
//啟動服務時執行
protected override void OnStart(string[] args)
{
//使時間控制項生效 並且1秒鐘調用一次timer1_Elapsed() 方法
this.timer1.Enabled = true;
this.timer1.Interval = 1000;
}
//停止服務時執行
protected override void OnStop()
{
}
//暫停服務時執行
protected override void OnPause()
{
base.OnPause();
}
//繼續服務時執行
protected override void OnContinue()
{
}
//此方法間隔一定時間就會運行一次
private void timer1_Elapsed(object sender, ElapsedEventArgs e)
{
//在此添加您們需要的功能代碼, 我在此添加檢測計劃是否需要執行
i++;
System.IO.File.AppendAllText("d:\\1.txt","s"+i);
}
編寫完服務以後 :
1. 打開Visual Studio .NET命令提示
2. 改變路徑到你項目所在的bin\Debug文件夾位置(如果你以Release模式編譯則在bin\Release文件夾)
3. 執行命令“InstallUtil.exe MyWindowsService.exe”註冊這個服務,使它建立一個合適的註冊項。
4. 右擊桌面上“我的電腦”,選擇“管理”就可以打電腦管理控制台
5. 在“服務和應用程式”裡面的“服務”部分里,你可以發現你的Windows服務已經包含在服務列表當中了
6. 右擊你的服務選擇啟動就可以啟動你的服務了
1:在解決方案中,訪問要向其中添加安裝組件的服務的Design視圖。
2:在屬性視窗中,單擊添加安裝程式鏈接
這時項目中就添加了一個新類 ProjectInstaller 和兩個安裝組件 ServiceProcessInstaller 和 ServiceInstaller,並且服務的屬性值被覆制到組件。
3:若要確定如何啟動服務,請單擊 ServiceInstaller 組件並將 StartType 屬性設置為適當的值。
ü Manual 服務安裝後,必須手動啟動。
ü Automatic 每次電腦重新啟動時,服務都會自動啟動。
ü Disabled 服務無法啟動。
4:將serviceProcessInstaller類的Account屬性改為 LocalSystem
這樣,不論是以哪個用戶登錄的系統,服務總會啟動。
第四步:生成服務程式
通過從生成菜單中選擇生成來生成項目。
註意 不要通過按 F5 鍵來運行項目——不能以這種方式運行服務項目。
第五步:安裝服務
訪問項目中的已編譯可執行文件所在的目錄。
用項目的輸出作為參數,從命令行運行 InstallUtil.exe。在命令行中輸入下列代碼:
installutil yourproject.exe
卸載服務
用項目的輸出作為參數,從命令行運行 InstallUtil.exe。
installutil /u yourproject.exe