程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> c#創立windows辦事入門教程實例

c#創立windows辦事入門教程實例

編輯:C#入門知識

c#創立windows辦事入門教程實例。本站提示廣大學習愛好者:(c#創立windows辦事入門教程實例)文章只能為提供參考,不一定能成為您想要的結果。以下是c#創立windows辦事入門教程實例正文


用c#中創立一個windows辦事異常簡略,與windows辦事相干的類都在System.ServiceProcess定名空間下。

每一個辦事都須要繼續自ServiceBase類,偏重寫響應的啟動、暫停、停滯等辦法。

windows辦事的相干信息是寄存與注冊表中的,所以他可以在不須要用戶登錄的情形下主動運轉,在c#中你不須要再直接向注冊表中添加信息了,c#供給了辦事裝置類 ServiceProcessInstaller和ServiceInstaller來完成辦事的裝置。

起首,用vs創立一個windows辦事項目

2014-02-13_095454

勝利後你可以看到

2014-02-13_095922

Program中只包括辦事運轉的相干信息


/// <summary>
/// 運用法式的主進口點。
/// </summary>
static void Main()
{
ServiceBase[] ServicesToRun;
ServicesToRun = new ServiceBase[]
{
new Service1()//這裡是一個數組,意味著我們可以在一個辦事過程中創立多個辦事實例,只須要在這裡加上便可
};
ServiceBase.Run(ServicesToRun);
}

Service1.cs就是我們須要的辦事類,與windows辦事相干的根本操作年夜都可以在這裡找到,如:Start,Stop,Pause,Continue等,我們要做的就是依據這些操作做分歧的處置便可以了。

我們先在辦事Start和Stop時分離記載一條信息到D盤


protected override void OnStart(string[] args)
{
File.AppendAllText("d:" + this.GetType().Name + ".txt", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss 辦事啟動"));
}
protected override void OnStop()
{
File.AppendAllText("d:" + this.GetType().Name + ".txt", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss 辦事停滯"));
}

一個簡略的辦事就完成了,下一步添加裝置信息

雙擊項目中的Service.cs轉到辦事設計界面,在空白處右鍵選擇“添加裝置法式”

2014-02-13_100931

vs會主動創立一個默許稱號為ProjectInstaller.cs的文件並轉到響應的設計界面

默許添加兩個類 serviceProcessInstaller1和serviceInstaller1,第一個重要用來設置辦事所屬賬戶,關系到辦事的運轉,第二個是辦事信息描寫,如:辦事名、能否主動啟動等

右鍵serviceProcessInstaller1屬性,將Account屬性選擇為LocalSystem

2014-02-13_101602

右鍵serviceInstaller1屬性,將StartType屬性設為Automatic(主動啟動),Description為“我的第一個windows辦事”

全體保留後生成,找到生成的法式。

2014-02-13_101956

因為windows辦事不克不及經由過程雙擊直接運轉,所以我們須要借助.net供給的InstallUtil.exe來裝置辦事。

2014-02-13_102233

按回車開端裝置,勝利後會提醒 “提交”階段已勝利完成,假如掉敗則是“回滾”階段已勝利完成

2014-02-13_102400

翻開windows辦事治理器就可以看到我們裝置的辦事,默許辦事裝置勝利後不會連忙啟動,須要我們手動啟動

2014-02-13_102549

假如不出不測,會顯示已啟動

2014-02-13_102659

到D盤目次下找到Service1.txt,翻開會看到我們填入的信息,解釋我們做的windows辦事曾經勝利了。

要卸載windows辦事可以用InstallUtil.exe /u WindowsService1.exe來卸載或經由過程體系敕令 sc delete 辦事名來卸載。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved