我們正試圖自動化部署我們創建的一些服務。我們不想將用戶名和密碼硬編碼到應用程序安裝程序中。不硬編碼用戶名和登錄的問題是它會使發行版的自動化出現問題。在自動執行服務部署時,設置用戶服務運行的最佳做法是什麼?
你會如何在MSI封裝Windows服務這樣的:
該服務被安裝到在一個特定的用戶名來運行,這取決於環境的實例。即在生產環境中,它在DOMAIN_NAME \ ProductionServiceUser下運行,但如果我們將相同的服務部署到分段中,則該服務在DOMAIN_NAME \ StagingServiceUser下運行。
如果您通過「添加刪除程序」卸載該服務,該服務將被刪除。
我應該更清楚。這是一個非託管C++服務。我想我們可以有一個C#庫項目來執行服務安裝,但是自定義操作有一些問題,因爲MS由於某種原因認爲自定義操作不能像正在執行的用戶那樣運行是一個好主意安裝。 – bpeikes
我不知道我明白這是如何違揹我的建議。如果您想使用Visual Studio,唯一的解決方案是自定義操作。如果您不想使用自定義操作,則無法使用Visual Studio(您需要一個支持服務的不同安裝創作工具)。 –
自定義操作沒問題,它們是我們正在使用的,但是我更多地詢問如果您希望服務在特定用戶帳戶下運行,您將如何自動部署msi。 – bpeikes