2013-09-30 106 views
1

編輯:Installshield:將Installdir設置爲環境變量

無更多相關性。由於Installshield的困難,不僅包括這個問題,還包括使用Visual Studio中的項目構建它的問題,以及它無法替換需要替換的舊文件之一,現在我正在用C#編寫一個安裝程序。我應該早點完成,因爲我現在已經完成了。謝謝克里斯託弗畫家和邁克爾Urman試圖引導我,雖然這個問題。不幸的是,我沒有得到任何進一步的。

原來的職位低於

老實說,這一直就像拔牙。我希望我錯失了明顯的東西。我一直試圖讓Installshield讓我將INSTALLDIR設置爲一個環境變量。這是必要的,因爲公司做事的方式。我知道我可以通過調用MSI並通過參數傳遞文件夾的批處理文件將其設置在安裝程序之外,但該解決方案最終會導致不友好的MSI。如果有人有任何內部解決方案,請讓我知道。

回答

1

Windows Installer具有InstallShield在環境視圖和組件中公開的環境表|高級設置|環境視圖。

Setting Environment Variables

+0

所以,如果我正確理解這一點,你說我需要在Windows Installer中編輯項目以獲取環境變量? –

+0

InstallShield構建Windows Installer數據庫。您在InstallShield中編輯項目。 –

+0

這更令人困惑。我的Installshield版本沒有名爲組件的菜單,組件也沒有名爲高級設置的菜單。這是我允許在專業版的Installshield上做的事嗎?還是需要升級? –

1

Windows安裝程序允許您參考使用屬性標記的變體環境變量。我建議an approach similar to RobertDickau's,在那裏你可以使用集合屬性自定義動作,從[%SOMEVAR]提前設置INSTALLDIR。如果INSTALLDIR尚未定義,則只運行自定義操作,以便人們可以在命令行覆蓋INSTALLDIR。請注意,這必須在成本計算之前運行,否則您必須找到不同的條件並使用設置目錄操作(如Robert提到的)。

+0

我會研究自定義操作。 –