C 製作Windows service服務系列一 製作一個可安裝 可啟動 可停止 可解除安裝的Windows service
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow
也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!
系列一: 製作一個可安裝、可啟動、可停止、可解除安裝的windows service(downmoon原創)
系列二:演示一個定期執行的windows服務及除錯(downmoon)
系列三:
因為windows service 工作中最近開始頻繁使用,而手工部署的方式,最好的是用BAT檔案,可是程式要部署到別的伺服器上時,就會發現路徑是一個問題:當然也可以用全域性變數來控制,這裡不贅述。
給出一個手工部署的例子
setupServer.bat
echo off
if exist " %SystemRoot%Microsoft.NETFramework2.0.50727
:DispError
echo 您的機器上沒有安裝 . net FrameWork 2.0
pause
goto LastEnd
:netOld
cd %SystemRoot% Microsoft . NET Framework v2 . 0.50727
echo 您的機器上安裝了相應的 . net FrameWork , 可以安裝本服務,按任意鍵繼續…………
echo off
pause
%SystemRoot% Microsoft . NET Framework v2 . 0.50727 installutil C: TradeMatchService2007 TradeMatchService2007 bin Debug TradeMatchService2007 . exe
net start " servTradeMatch2007 "
:LastEnd
rem exit
解除安裝如下:
unInstallServer.bat
echo off
if exist " %SystemRoot%Microsoft.NETFramework2.0.50727 " goto netOld
:DispError
echo 您的機器上沒有安裝 . net FrameWork 2.0 , 安裝即將終止
pause
goto LastEnd
:netOld
echo 即將解除安裝本服務,按任意鍵繼續…………
echo off
pause
net stop " servTradeMatch2007 "
cd %SystemRoot% Microsoft . NET Framework v2 . 0.50727
%SystemRoot% Microsoft . NET Framework v2 . 0.50727 installutil / uninstall C: TradeMatchService2007 TradeMatchService2007 bin Debug TradeMatchService2007 . exe
:LastEnd
rem exit
也可以同時判斷兩個以上的net FrameWork版本
這裡要介紹的是一個完整的安裝程式,所以服務本身就略去,如果有朋友需要學習,可以跟我聯絡
[email protected]
好了,言歸正傳
假定 windows Service已寫好,服務名為servTradeMatch2007,可執行檔名為TradeMatchService2007.exe
一、首先在解決方案中建立一個安裝部署的專案,右鍵點選專案名稱,在選單中選擇[新增]-->[專案輸出],
在彈出的"新增專案輸出組"視窗中,第一個下拉框會列出該解決方案中其他的專案,
選擇需要製作安裝的windows service專案,再選擇主輸出,點[確定]。如圖:
依次在”目標計算機上的檔案系統“--”應用程式資料夾“下新增以下四個檔案
1、msiexec.exe
2、start.bat
3、stop.bat
4、主輸出檔案
其中msiexec.exe位於Windows/System32下
stopbat檔案內容如下:
net stop " servTradeMatch2007 "
exit
startbat檔案內容如下:
echo off
net start " servTradeMatch2007 "
exit
在"使用者的程式資料夾下",新建一資料夾”蔬菜網全文檢索服務“,分別製作這前三個檔案的快捷方式到這裡
右鍵單擊”解除安裝服務“(msexec.exe對應的快捷方式)
輸入一串值
其中"/x "後面對應和數值來自
Setup_TradeMatchService2007.vdproj檔案
OK ! 生成安裝包,
別急,安裝完後,windows service並沒有安裝成服務。
還必須在安裝專案中新增自定義操作。右擊安裝專案->檢視->自定義操作.
如下圖:分別新增自定義操作,在應用程式資料夾中選擇剛才新增的主輸出即可.
安裝過程如下:
解除安裝: