使用InstallUtil安裝.NET服務


Answers

正如你注意到的,Karim,“賬戶”屬性就是解決方案,在這裡。 對於那些對此屬性設置的安全上下文感興趣的人:

http://msdn.microsoft.com/en-us/library/system.serviceprocess.serviceaccount.aspx

上面使用InstallUtil或SC,我喜歡創建一個自我安裝程序的想法:

http://www.codeproject.com/KB/dotnet/WinSvcSelfInstaller.aspx

即使我在.net 1.1文檔中發現了這一點:

ManagedInstallerClass類型支持.NET Framework基礎結構,不能在代碼中直接使用。

Question

我正在嘗試安裝我寫的.NET服務。 按照MSDN的建議,我正在使用InstallUtil。 但是我錯過瞭如何在命令行或服務本身設置默認服務用戶。 現在,運行InstallUtil時,它將顯示一個對話框,要求用戶輸入用戶的憑據。 我試圖將服務安裝集成到一個更大的安裝,並需要服務安裝保持沉默。




您是否被要求在該帳戶下運行該服務,或者是否有權安裝該服務? 第二,作為管理員安裝應該防止發生。 首先,你必須添加一個ServiceProcessInstaller到你的安裝程序。

我相信服務的設計表面有一個鏈接來創建一個項目安裝程序。 在該設計器上,可以添加System.ServiceProcess.ServiceProcessInstaller類型的進程安裝程序。 此對象的屬性允許您設置用於服務的帳戶。