1

我創建了windows服務的安裝文件。除此之外,我必須在目標機器上安裝第三方軟件。該第三方軟件適用於OS類型的64位和32位兩種版本。我已經包括這在自定義操作如下圖所示:添加條件以檢查Visual Studio中的自定義操作的操作系統類型安裝Shield項目

Setup

現在我想操作系統類型條件添加到該設備,但我沒有發現任何選項的條件下添加如下圖所示:

Conditions

正如你可以看到沒有,我們可以明確地鍵入條件的任何選項。我已經讀過識別操作系統類型的條件是NOT VersionNT64VersionNT64,並檢查它是否安裝它會是NOT Installed等,並且您可以將其指定爲條件。但正如我剛纔所說,我沒有看到任何選項,以指明這種情況。對此的任何建議或見解將會非常有幫助。請讓我知道是否需要進一步的細節。

回答

2

條件構建器用於啓動條件,只有滿足操作系統條件時才允許進行安裝。對於自定義操作的條件,請在自定義操作的Condition屬性中使用VersionNT64。 Installed屬性適用於您的產品 - 未安裝意味着您的MSI未安裝 - 與操作系統版本或其他產品無關。

這些情況通常涉及使用先決條件,並引導程序先安裝這些先決條件:

https://msdn.microsoft.com/en-us/library/ms165429.aspx

與您的設置安裝其他設置的問題是,如果他們是基於MSI他們可能會失敗因爲你不能執行遞歸MSI安裝(你的調用另一個)。

對於不同的體系結構,構建兩個MSI也很常見(通常也是必需的)。

https://blogs.msdn.microsoft.com/heaths/2008/01/15/different-packages-are-required-for-different-processor-architectures/

所以,你將建立一個32位的MSI和64位MSI再沒有介入的選擇 - 你只需要安裝第三方軟件,在您的MSI去。

相關問題