日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

系統服務的最簡單實現

系統 1943 0

?? 下面我告訴你,只需三個文件,即可完成一個系統服務。

????? 1.新建一個類,命名為TestService,并繼承于

System.ServiceProcess.ServiceBase。重啟其中的OnStart方法和OnStop方法

??????

?1 ? public ? class ?TestService:ServiceBase
?2 ? ????{
?3 ? ???????? protected ? override ? void ?OnStart( string []?args)
?4 ? ????????{
?5 ? ????????????NLogHelper.Trace( " OnStart " );
?6 ? ????????}
?7 ?
?8 ? ???????? protected ? override ? void ?OnStop()
?9 ? ????????{
10 ? ????????????NLogHelper.Trace( " OnStop " );
11 ? ????????}
12 ? ????}

???? 2.新建一個類,命名為TestServiceInstaller,并繼承于System.Configuration.Install

?????

?1 ? ????[RunInstaller( true )]
?2 ? ???? public ? class ?TestServiceInstaller?:?Installer
?3 ? ????{
?4 ? ???????? /// ? <summary>
?5 ? ???????? /// ?安裝一個進程
?6 ? ???????? /// ? </summary>
?7 ? ???????? private ?ServiceInstaller?serviceInstaller;
?8 ? ???????? /// ? <summary>
?9 ? ???????? /// ?安裝一個服務
10 ? ???????? /// ? </summary>
11 ? ???????? private ?ServiceProcessInstaller?processInstaller;
12 ?
13 ? ???????? /// ? <summary>
14 ? ???????? /// ?Initializes?a?new?instance?of?the? <see?cref="TestServiceInstaller"/> ?class.
15 ? ???????? /// ? </summary>
16 ? ???????? public ?TestServiceInstaller()
17 ? ????????{
18 ? ???????????? // 致命用戶類型
19 ? ????????????processInstaller? = ? new ?ServiceProcessInstaller?{Account? = ?ServiceAccount.LocalSystem};
20 ? ????????????serviceInstaller? = ? new ?ServiceInstaller
21 ? ???????????????????????????????????{
22 ? ???????????????????????????????????????StartType? = ?ServiceStartMode.Manual, // 服務的啟動類型:手動
23 ? ???????????????????????????????????????ServiceName? = ? " TestService " , // 服務的名稱
24 ? ???????????????????????????????????????Description? = ? " 這是TestService的描述 " ,
25 ? ???????????????????????????????????????DisplayName? = ? " 這里是顯示在系統服務中的名稱 "
26 ? ???????????????????????????????????};
27 ?
28 ? ????????????Installers.Add(serviceInstaller);
29 ? ????????????Installers.Add(processInstaller);
30 ? ????????}
31 ? ????}

????? 3.用一個控制臺程序生成exe文件

?????

?1 ? ???? static ? class ?Program
?2 ? ????{
?3 ? ???????? /// ? <summary>
?4 ? ???????? /// ?應用程序的主入口點。
?5 ? ???????? /// ? </summary>
?6 ? ???????? static ? void ?Main()
?7 ? ????????{
?8 ? ????????????var?servicesToRun? = ? new ?ServiceBase[]
?9 ? ??????????????????????????????????????????????{
10 ? ?????????????????????????????????????????????????? new ?TestService()
11 ? ??????????????????????????????????????????????};
12 ? ????????????ServiceBase.Run(servicesToRun);
13 ? ????????}
14 ? ????}

??? 接下來,編譯,生成一個test.exe文件。

??? 然后通過vs的命令提示行,使用命令 installutil test.exe

嘿嘿,看一下,系統服務中已經多了一個名為:“這里是顯示在系統服務中的名稱”的服務了

系統服務的最簡單實現


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 那曲县| 玛沁县| 蒲城县| 南康市| 峨眉山市| 怀仁县| 贡嘎县| 梁河县| 阜新| 股票| 南丰县| 丹寨县| 石台县| 甘谷县| SHOW| 大城县| 阳泉市| 来安县| 上蔡县| 盐池县| 特克斯县| 称多县| 泸溪县| 盐池县| 伊川县| 平舆县| 敖汉旗| 齐河县| 三原县| 蓝田县| 会宁县| 文水县| 侯马市| 仙居县| 舞钢市| 清涧县| 乡城县| 积石山| 和田市| 疏勒县| 南木林县|