用C#建立Windows(NT)服務

來源:互聯網
上載者:User

用C#建立Windows(NT)服務(轉)
 
主要是比較一下用VS.Net寫Windows Service的簡潔性。
間回答上面的那篇IO讀寫問題
 
導讀:
 
Windows服務在Visual Studio 以前的版本中叫NT服務,在VS.net啟用了新的名稱。
用Visual C# 建立Windows服務不是一件困難的事,本文就將指導你一步一步建立
一個Windows服務並使用它。這個服務在啟動和停止時,向一個文字檔中寫入文
字資訊。這個小技巧來自於MSDN,但是現在程式編寫的更加清晰,並且你可以根據
你的需要修改它。
 
Windows服務在Visual Studio 以前的版本中叫NT服務,在VS.net啟用了新的名稱。
用Visual C# 建立Windows服務不是一件困難的事,本文就將指導你一步一步建立
一個Windows服務並使用它。這個服務在啟動和停止時,向一個文字檔中寫入文
字資訊。這個小技巧來自於MSDN,但是現在程式編寫的更加清晰,並且你可以根據
你的需要修改它。
 
第一步:建立服務架構
Visual C# 工程中選取 Windows 服務(Windows Service)選項......
嚮導向工程檔案中增加WebService1.cs類...
 
第二步:向服務中增加功能
在 WebService1.cs中我們可以看到,有兩個被忽略的函數 OnStart和OnStop。
protected override void OnStart(string[] args)
{
FileStream fs = new FileStream(@"c:\temp\mcWindowsService.txt" , FileMode.OpenOrrCreate, FileAccess.Write);
StreamWriter m_streamWriter = new StreamWriter(fs);
m_streamWriter.BaseStream.Seek(0, SeekOrigin.End);
m_streamWriter.WriteLine(" mcWindowsService: Service Started \n");
m_streamWriter.Flush();
}
 
protected override void OnStop()
{
FileStream fs = new FileStream(@"c:\temp\mcWindowsService.txt" , FileMode.OpenOrrCreate, FileAccess.Write);
StreamWriter m_streamWriter = new StreamWriter(fs);
m_streamWriter.BaseStream.Seek(0, SeekOrigin.End);
m_streamWriter.WriteLine(" mcWindowsService: Service Stopped \n");
m_streamWriter.Flush();

}
 
第三步:安裝和運行服務
這個應用程式最後產生一個exe檔案mcWinService.exe。要註冊這個服務,你需
啟動開始菜單中的命令列按如下方式調用
installutil:installutil C:\mcWebService\bin\Debug\mcWebService.exe。
要卸載服務,使用 /u 選項:
installutil /u C:\mcWebService\bin\Debug\mcWebService.exe。
 
第四步:啟動和停止服務
Mycomputer->Manage->/ Services and Applications/Services
or: Computer Management/Services
你就能看到服務 mcWinService,按右鍵快顯功能表中有啟動和停止選項
 
第五步:測試服務
 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.