windows服務是可以在系統啟動時自動開啟的程式,執行在後台處理一些事務。本文主要介紹c#對服務的開發以及安裝和解除安裝。
在專案建立成功後,下面的兩個方法是服務的啟動和停止入口。
//例項化mainservice
private readonly mainservice service = new mainservice()
;///
/// 服務啟動
///
///
protected override void
onstart
(string[
] args)
///
/// 服務停止
///
protected override void
onstop()
我這裡將服務啟動後與停止後要執行的**封裝到乙個mainservice類裡面。如下:
class mainservice
; _mainthread.
start()
;}///
/// 服務停止
///
public void
stop()
///
/// 啟動執行緒後,要執行的程式,我這裡是寫日誌。
///
private void
writelog()
if(!file.
exists
(@"e:\windowsservice\servicetest.txt"))
_servicerun = true;
int i =0;
string s ="";
while
(_servicerun)
thread.
sleep
(5000);}}}
這樣的話我就可以在例項化mainservice後呼叫start方法開始執行服務要做的事情,當然停止也是可以自己設定的,我這裡用來停止執行緒和停止while迴圈。
服務控制項serviceinstaller1可以對服務的一些屬性進行配置。
可以配置服務的名稱和描述。
下面是服務的安裝,我這裡用的是installutil.exe進行的安裝。首先要在管理員模式下進入dos黑窗體,然後切換到編譯好的服務目錄下面,最後用installutil.exe進行安裝。
cd e:windowsservice\bin\debug
c:\windows\microsoft.net\framework\v4.
0.30319\installutil windowsservice.exe
當出現下面提示時說明你安裝成功了。
安裝成功後可以在系統服務中看到自己寫的服務了。服務名稱和描述是上面設定好的。
當然解除安裝也很簡單,只要將安裝的指令碼加/u就可以了。
cd e:windowsservice\bin\debug
c:\windows\microsoft.net\framework\v4.
0.30319\installutil /u windowsservice.exe
最後是服務的除錯,需要在服務安裝成功後,並啟動服務才可以進行除錯。用附加到程序,然後找到你開發的服務附加上去就可以了。
c 開發windows服務
摘自 微軟的專案模板能很好的支援windows服務開發,如c 的windows服務專案 c 開發的話,也不難,使用一些api就能實現,下附 cpp view plain copy include stdafx.h include windows.h define service name srv d...
C 開發windows服務
windows下無法像linux那樣直接執行nohup等命令執行後台程式,只能呼叫相應api做成服務。服務可以在沒有任何使用者登入計算機的情況下執行。c 建立windows 服務比較方便,直接派生 system.serviceprocess.servicebase,但是只支援windows xp。1...
c 開發windows服務
1.首先新增乙個windows服務程式 2.在 protected override void onstart string args 中加入我們的業務邏輯 3.在我們的gateservice中的設計頁面,新增安裝程式 4.配置安裝程式serviceprocessinstaller1和service...