web-dev-qa-db-ja.com

特定のディレクトリにmsiexecでmsiをインストールする

特定のディレクトリにmsiexecでmsiをインストールしたい。私は使用しています:

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

Msiは私の特定のパスではなくデフォルトのパスにインストールされるため、「INSTALLDIR」では機能しません。

37
Cataldo

INSTALLDIRの代わりにTARGETDIRを使用します。 TARGETDIRプロパティの引用符は、スペースの場合のみパスの周りにあることに注意してください。

msiexec/i "msiパス" TARGETDIR = "C:\ myfolder"/qb

41
Ciprian

InstallShield 12

INSTALLDIRは、Setup.exeまたは.msiデータベースを起動するエンドユーザーなど、通常のWindowsインストーラーベース(またはInstallScript MSI)インストールのメイン製品インストールディレクトリを表します。

TARGETDIRは、InstallScriptインストール、または管理者のWindowsインストーラーベースのインストール(ユーザーが/ aコマンドラインスイッチを指定してSetup.exeまたはMsiExec.exeを実行する場合)のインストールディレクトリを表します。

InstallScript MSIプロジェクトでは、InstallScript変数MSI_TARGETDIRは、管理者用インストールのターゲットを保存します。

14
David Schwartz
msiexec /i "msi path" INSTALLDIR="C:\myfolder" /q

このバリアントのみがうまく機能しました。

6
Moscow Boy

実際、両方のINSTALLPATH/TARGETDIR は正しい。 MSIがこれを処理する方法に依存します。

wixToolSetを使用してMSGを作成します。WXSファイルには、「ディレクトリ」ノードがあり、ルートディレクトリは次のようになります。

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

ご覧のとおり、Idを使用する必要があります。

3
xiaoym

私の場合、それらはすべて機能せず、最終的には

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

Ezzadeenの説明に従ってlog.txtをチェックすると、そこに「INSTALLFOLDER」が見つかりました。

3
Colibri

これは動作するはずです:

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

INSTALLLOCATIONを使用します。問題がある場合は、/ lv log.txtを使用して詳細なログをダンプします。ログは、独自のオプションをオーバーライドするプロパティの変更があるかどうかを示します。既に製品をインストールしている場合、2回目の実行でインストール場所を変更せずに製品を更新する場合があります。最初にアンインストールする必要があります(/ xオプションを使用)。

3
ezzadeen

これも私のために働いた

msiexec /i "msi path" INSTALLDIR="D:\myfolder" /q

私は他の2つのイテレーションを試し、両方ともデフォルトのC:\ Program Filesにインストールしました

INSTALLDIR = "D:\ myfolder"/qは、他のドライブにインストールされました。

1
ttoomm

msiの場合、インストールプロセスの後半でINSTALLDIRとTARGETDIRの両方がDEFAULTPATHCの値を反映するようにリセットされたため、DEFAULTPATHC = "D:\ myfolder"を設定する必要がありました。

1
p4ndepravity

最新のmsiexecにはAPPLICATIONFOLDER = "path"を使用します

1
Sharvin K

Advanced Installerを使用して.msiをビルドした場合は、APPDIR=を使用します

0
lcg1ant