2012-01-12 129 views
28

我想在特定目錄中安裝msiexec的msi。我使用的是:msiexec在特定目錄中安裝msi

msiexec /i "msi path" INSTALLDIR="C:\myfolder" /qb 

它不與「INSTALLDIR」的工作,因爲微星在默認路徑,而不是在我的具體路徑安裝。

回答

35

使用TARGETDIR而不是INSTALLDIR。請注意,TARGETDIR屬性的引號僅在空格的路徑附近。

MSIEXEC/I 「MSI路徑」 TARGETDIR = 「C:\ MyFolder文件」/ QB

5

MSIEXEC/I 「MSI路徑」 INSTALLDIR = 「C:\ MyFolder文件」/ Q

只有這個變種運作良好!

+1

對於我也只有這一個工作:) – szaman 2014-09-30 08:58:58

12

的InstallShield 12

INSTALLDIR代表了一個常規的基於安裝Windows(或安裝InstallScript MSI)的安裝,主要產品的安裝目錄,如最終用戶啓動Setup.exe或您的.msi數據庫。

TARGETDIR代表InstallScript安裝或基於管理Windows Installer的安裝(當用戶使用/ a命令行開關運行Setup.exe或MsiExec.exe時)的安裝目錄。

在InstallScript MSI項目中,InstallScript變量MSI_TARGETDIR存儲管理安裝的目標。

2

這應該工作:

msiexec /i "msi path" TARGETDIR="C:\myfolder" /qb 
2

事實上,無論是INSTALLPATH/TARGETDIR是正確的。這取決於MSI如何處理這個問題。

我使用wixToolSet創建了一個MSG。在WXS文件中,有「目錄」的節點,其根目錄,也許這樣的:

<Directory Id="**TARGETDIR**" Name="SourceDir">; 

正如你所看到的:Id是你應該使用。

1

這一個工作對我來說太

MSIEXEC/I 「MSI路徑」 INSTALLDIR = 「d:\ MyFolder文件」/ Q

我曾嘗試過其他兩次迭代和兩個安裝在默認 C:\ Program Files

INSTALLDIR =「D:\ myfolder」/ q安裝在另一個驅動器上。

0

使用INSTALLLOCATION。 如果遇到問題,請使用/ lv log.txt來轉儲詳細日誌。日誌會告訴你是否有屬性改變會覆蓋你自己的選項。 如果您已經安裝了該產品,則第二次運行可能只是更新它而不更改安裝位置。您必須先卸載(使用/ x選項)。

1

我的微星,我必須設置DEFAULTPATHC =「​​d:\ MyFolder文件」,因爲在後面的安裝過程中,既INSTALLDIR和TARGETDIR被重置,以反映DEFAULTPATHC

1

值在我的情況他們都做了不行,最後是

msiexec /i "msinamebla.msi" INSTALLFOLDER="C:\test\" /qb 

我檢查log.txt的像通過ezzadeen描述,發現「INSTALLFOLDER」在那裏。