2010-06-04 17 views
0

我在C#中的Visual Studio 2005中創建了Windows服務。我有一個安裝項目和一個ProjectInstaller類。我也有代碼以編程方式從AssemblyFileVersionAttribute獲取版本。以編程方式在ProjectInstaller上設置窗口服務的版本

我需要弄清楚我在哪裏設置了我已經獲得的版本(以及這個代碼應該去的地方)。我嘗試將它放在ProjectInstaller.Designer.cs的InitializeComponent方法中,然後將版本附加到serviceInstaller1.DisplayName和serviceInstaller1.ServiceName。這不起作用,你不應該修改這個方法的內容。

任何想法?

回答

0

而不是增加代碼InitializeComponent我只是把它添加到ProjectInstaller的構造函數,調用InitializeComponent後,我設置ServiceProcessInstaller1.Username等有沒有問題,但我認爲你需要得到保持其他安裝程序來設置用戶名,所以它可能會工作,如果你做這樣的事情:

((ServiceProcess.ServiceInstaller)ServiceProcessInstaller1.Parent.Installers[1]).DisplayName 
+0

對不起,我遲到了迴應。我在其他項目旁邊。我喜歡把它放在InitializeComponent之後的構造函數中的建議。然而,拋出一個錯誤,指出'安裝程序'是一個屬性,它的使用就像一個方法。我試圖改變這一點,但不能提出一個可行的解決方案。我也嘗試將它放入OnBeforeInstall的覆蓋方法中,然後爲serviceInstaller1設置DisplayName和ServiceName屬性。這沒有做任何事情,所以我假設需要設置serviceProcessInstaller。 – jmac 2010-06-09 18:03:29

+0

@ user302004:對不起,我想我把C#和VB.Net混淆了一下,它說(1)在我的示例中它應該是[1],而我會用那個更新我的答案。 – 2010-06-09 18:29:31

+0

我會在早上測試它,並讓你知道。感謝您的快速回復。 – jmac 2010-06-09 18:53:25

相關問題