4

2 つの msi ファイルを 1 つの setup.exe ファイルに (ブートストラップ経由で) パックし、条件 (マシンが x64 または x86) に応じてそのうちの 1 つだけを実行する必要があります。
それを行う方法はありますか?

4

2 に答える 2

3

iexpress.exe(標準のWindowツール)を使用して2つのmsiファイルをパックし、iexpressパッケージの開始コマンドとして設定したカスタムバッチファイルを追加することもできます。バッチスクリプトはアーキテクチャを決定し、対応するmsiファイルを開始します。

if %PROCESSOR_ARCHITECTURE% EQU x86 (
  echo "x86"
  call setup-x86.msi
) ELSE (
   echo "x64"
   call setup-x64.msi
)

そのコードをinstallmsi.batという名前のバッチファイルに配置します。その後、IExpressウィザードで次のインストールコマンドを入力します。

cmd.exe /C installmsi.bat

cmd.exeIExpressは古いを使用するため、ここで明示的に呼び出す必要がありますcommand.com

IExpressウィザードで適切なオプションを設定することで実行できるバッチウィンドウを非表示にすることもできます。

于 2009-12-21T13:04:08.420 に答える
0

プログラムを作成して両方のインストーラーを埋め込み、システムが 64 ビットかどうかをチェックすることができます。これを行うネイティブ アプリの作成に関するブログ記事をhttp://blog.foldertrack.com/?p=45に書きました。

于 2010-07-20T05:03:02.523 に答える