1

32 ビットおよび 64 ビット形式のアプリケーションを開発しました。これらのアプリケーションには、対応するレジストリ エントリも必要です。これらは、WiX を使用して 32 ビットと 64 ビット用の個別のパッケージとして提供しています。

今私の要件は、OS 構成に基づいてコンポーネントをインストールする単一のインストーラーを作成することです。Bootstrapper を使用してパッケージをバンドルしようとしました。

私のブートストラップ コードは次のようになります。

<Bundle Name="Bootstrapper" Version="1.0.0.0" Manufacturer="MYCOMPANY" UpgradeCode="b24f74ca-883c-4572-9479-37d92d733aa0">
  <BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense" />
  <Chain>
    <ExePackage Id="source1" Compressed="yes" PerMachine="yes" SourceFile="32\Sample.exe" InstallCondition="Not VersionNT64" />
    <ExePackage Id="source2" Compressed="yes" PerMachine="yes" SourceFile="64\Sample.exe" InstallCondition="VersionNT64" />
  </Chain>
</Bundle>

私のブートストラップ出力は MSI です。MSI を実行するMainEngineThread is returning 1620と、詳細ログが記録されます。

2 つの EXE をバンドルして単一の MSI パッケージを取得する方法を提案してください。

4

1 に答える 1

0

エラー 1620 は特に厄介なものではありません。MSI ファイルを開けないことを意味するだけです。最も簡単な説明は、ディレクトリ構造が正しくなく、exe が MSI の間違った場所または名前で MSI インストールを呼び出していることです。ファイル。

于 2014-05-06T17:29:22.243 に答える