国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

c#創建windows服務(Windows Services)詳細步驟

2020-01-24 03:00:37
字體:
來源:轉載
供稿:網友

Windows服務在Visual Studio 以前的版本中叫NT服務,在VS.net啟用了新的名稱。用Visual C# 創建Windows服務不是一件困難的事,本文就將指導你一步一步創建一個Windows服務并使用它。這個服務在啟動和停止時,向一個文本文件中寫入一些文字信息。
 第一步:創建服務框架

要創建一個新的 Windows 服務,可以從Visual C# 工程中選取 Windows 服務(Windows Service)選項,給工程一個新文件名,然后點擊 確定。
你可以看到,向導向工程文件中增加WebService1.cs類:
其中各屬性的含意是:
Autolog                 是否自動寫入系統的日志文件
CanHandlePowerEvent     服務時候接受電源事件
CanPauseAndContinue          服務是否接受暫停或繼續運行的請求
CanShutdown 服務是否在運行它的計算機關閉時收到通知,以便能夠調用 OnShutDown 過程
 CanStop                              服務是否接受停止運行的請求
ServiceName                       服務名

第二步:向服務中增加功能

在 .cs代碼文件中我們可以看到,有兩個被忽略的函數 OnStart和OnStop。
OnStart函數在啟動服務時執行,OnStop函數在停止服務時執行。在這里,當啟動和停止服務時,向一個文本文件中寫入一些文字信息,代碼如下:

復制代碼 代碼如下:

protected override void OnStart(string[] args)
{
 FileStream fs = new FileStream(@"d:/mcWindowsService.txt" , FileMode.OpenOrCreate, FileAccess.Write);
StreamWriter m_streamWriter = new StreamWriter(fs);
m_streamWriter.BaseStream.Seek(0, SeekOrigin.End);
m_streamWriter.WriteLine("mcWindowsService:         Service Started"+DateTime.Now.ToString()+"/n");
m_streamWriter.Flush();
m_streamWriter.Close();
fs.Close();

}

protected override void OnStop()
{
FileStream fs = new FileStream(@"d:/mcWindowsService.txt" , FileMode.OpenOrCreate, FileAccess.Write);
StreamWriter m_streamWriter = new StreamWriter(fs);
m_streamWriter.BaseStream.Seek(0, SeekOrigin.End);
m_streamWriter.WriteLine(" mcWindowsService: Service Stopped "+DateTime.Now.ToString()+"/n");
m_streamWriter.Flush();
m_streamWriter.Close();
fs.Close();
}

 第三步: 將安裝程序添加到服務應用程序

Visual Studio.NET 隨附有安裝組件,可用來安裝與服務應用程序相關聯的資源。安裝組件在正在安裝到的系統上注冊一項單個的服務,并使服務控制管理器知道該服務的存在。
要正確安裝服務,并不需要在安裝程序中進行任何特殊編碼。但是,如果需要向安裝進程添加特殊功能,則可能偶爾需要修改安裝程序的內容。

將安裝程序添加到服務應用程序的步驟是:

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新安县| 彭山县| 泗洪县| 济阳县| 兴安县| 高要市| 文山县| 兴安县| 修水县| 分宜县| 饶河县| 宁波市| 南昌县| 吉安县| 金溪县| 河北省| 竹北市| 双流县| 东光县| 石河子市| 格尔木市| 饶平县| 河间市| 永修县| 景德镇市| 邛崃市| 湟中县| 巍山| 深泽县| 隆安县| 屯留县| 邢台市| 房山区| 沧源| 梧州市| 称多县| 台安县| 秭归县| 拉萨市| 永和县| 玛沁县|