開發完windowService,通過InstallUtil.exe來布暑到windows系統上后,,正常運行了。
下次把windowService中的代碼改動后,重新生成了dll. 此時我是不是只停掉WindowService服務,然后復蓋掉原來的dll,并重新啟動windowService, 就可以了?
uj5u.com熱心網友回復:
理論上是可以的..但是為了停止會有其他問題.. 我采用卸載的方式.
在安裝的時候以及卸載的時候 都有一個bat 結構大概這樣.

安裝
@ECHO OFF
echo 準備安裝服務
pause
REM The following directory is for .NET 4.0
set DOTNETFX2=%SystemRoot%\Microsoft.NET\Framework\v4.0.30319
set PATH=%PATH%;%DOTNETFX2%
echo 安裝服務...
echo ---------------------------------------------------
InstallUtil /i WindowsService1.exe
echo ---------------------------------------------------
echo 安裝服務成功!
pause
卸載
@echo 卸載服務
%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\installutil WindowsService1.exe /u
pause
uj5u.com熱心網友回復:
其實你只需要保證檔案不獨占,你可以copy覆寫同名檔案就可以無論你是停用,還是卸載,都是這個目的。
所以在個目的下,無論停用,還是卸載,都是保證檔案不占用(在windows上做檔案更新一直都是讓人痛苦的事情,CEF一直到現在都不提供不shunt down cef就不能清除快取,一樣因為檔案占用討厭)
所以停用,和卸載-------還要東西需要足以,比如你一個服務,本身內部又啟用了同目錄的另一個后臺exe,那么該exe你也要保證他能同時被關閉,不然依舊是“檔案被某行程占用”
uj5u.com熱心網友回復:
我是用卸載重新按裝的方式uj5u.com熱心網友回復:
停用,覆寫,你只要保證需要替換的檔案沒有被占用就okuj5u.com熱心網友回復:
都可以,更新少停用覆寫,更新量大卸載重裝。uj5u.com熱心網友回復:
停用覆寫 重啟。。轉載請註明出處,本文鏈接:https://www.uj5u.com/net/85022.html
標籤:ASP.NET
