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

首頁 > 學院 > 開發設計 > 正文

[Solution] Microsoft Windows 服務(1) C#創建Windows服務

2019-11-17 02:19:42
字體:
來源:轉載
供稿:網友

[Solution] Microsoft Windows 服務(1) C#創建Windows服務

  Microsoft Windows 服務(即,以前的 NT 服務)使您能夠創建在它們自己的 Windows 會話中可長時間運行的可執行應用程序。這些服務可以在計算機啟動時自動啟動,可以暫停和重新啟動而且不顯示任何用戶界面。這種服務非常適合在服務器上使用,或任何時候,為了不影響在同一臺計算機上工作的其他用戶,需要長時間運行功能時使用。還可以在不同于登錄用戶的特定用戶帳戶或默認計算機帳戶的安全上下文中運行服務。

開發

  0.創建服務 1.安裝 2.啟動 3.停止 4.卸載 5.監控服務

創建服務:

1.  在c#中創建1個服務很簡單,只要繼承ServiceBase,重寫OnStart和OnStop方法就可以.(最快的是右鍵新建項)

    OnStart方法是服務啟動的時候執行的

    OnStop方法是服務停止的時候執行的

  

2.  通常會用System.Timers.Timer做定時任務處理.

安裝:

方式一(手動):

InstallUtil:

1. 打開Visual Studio .NET命令提示2. 改變路徑到你項目所在的bin/Debug文件夾位置(如果你以Release模式編譯則在bin/Release文件夾)3. 執行命令“InstallUtil.exe MyWindowsService.exe”注冊這個服務,使它建立一個合適的注冊項。

方式二(代碼):

a.ManagedInstallerClass類:

var filePath = PRocess.GetCurrentProcess().MainModule.FileName(取當前進程文件路徑)

var cmds = new []{filePath};

ManagedInstallerClass.InstallHelper(cmds);

b.(sc命令是用來與服務控制管理器和服務進行通信的命令行程序)

var cmd = "create myserver binpath= /""+程序絕對路徑名+"/" displayName= 服務名start= auto"

Process.Start("sc", cmd);

啟動:

方式一(代碼):

a.Process.Start("sc", "start服務名");

方式二(手動):

a.命令提示符中:net start 服務名

b.運行"services.msc",找到服務名,啟動服務

停止:

方式一(代碼):

a.Process.Start("sc", "stop 服務名");

方式二(手動):

a.命令提示符中:net stop服務名

b.運行"services.msc",找到服務名,停止服務

卸載:

方式一(手動):

1. 打開Visual Studio .NET命令提示2. 改變路徑到你項目所在的bin/Debug文件夾位置(如果你以Release模式編譯則在bin/Release文件夾)3. 執行命令“InstallUtil.exe /uMyWindowsService.exe”注冊這個服務,使它建立一個合適的注冊項。

方式二(代碼):

Process.Start("sc", "delete 服務名");

監控:

使用ServiceController來獲取服務狀態或對服務進行控制。

這個類可以獲取服務的狀態,屬性,對服務也可以進行啟動,停止操作

代碼下載


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 禹城市| 南部县| 济阳县| 蒙阴县| 咸丰县| 芜湖县| 扎赉特旗| 丹寨县| 肇东市| 固镇县| 东宁县| 定远县| 衢州市| 阿图什市| 佛学| 阳城县| 高雄县| 桃源县| 桓台县| 巴塘县| 太仆寺旗| 城步| 焦作市| 定边县| 闻喜县| 古田县| 弥渡县| 武功县| 大港区| 沧源| 新田县| 龙陵县| 绥宁县| 托克托县| 吉林市| 繁峙县| 临泉县| 婺源县| 余姚市| 汉川市| 句容市|