我已經構建了一個安裝Windows服務(作爲NetworkService用戶運行)的C#,.NET3.5 Web應用程序。該服務作爲網絡中任何機器的專用Web服務器,並且用戶使用其瀏覽器連接到該服務。我該如何創建一個Windows服務,在沒有用戶交互的情況下自行更新
使用Visual Studio 2008構建的msi文件安裝整個事件.msi文件安裝並運行部署應用程序,該應用程序處理設置用戶和權限以及將exe作爲服務安裝。
如果我決定增強應用程序(或找到並修復一個bug),我可以生成一個新的msi文件,並讓用戶在運行我的應用程序的所有機器上運行它。但我寧願自動發生這種情況(包括從我的網站下載更新並部署它們)。
因爲它作爲服務運行,它不是用戶特定的,所以我明白點擊一次部署不是一個選項。
有沒有什麼辦法可以實現這個目標?
是的,我曾想到這一點。第二種服務可能必須以機器管理員身份運行,因此它可能會覆蓋必要的文件(並停止並重新啓動服務)。據推測,這意味着在安裝時我必須要求管理員密碼? –
實際上,您已經要求管理權限,因爲您希望能夠首先重新安裝該服務。我相信無論您如何完成此任務,身份驗證都可用於此任務。 – Omaha
我已經接受了這個答案,儘管我不喜歡它。據推測,我將不得不在安裝時要求用戶輸入管理員密碼,以創建管理員服務? –