3

x86 および x64 アーキテクチャ用の 2 つの MSI インストーラーがあります。マシンのアーキテクチャに基づいて正しいインストーラーを選択して起動するよりも、それらを統合インストーラーにまとめたいと思います。

私はdotNetInstallerである程度成功しましたが、余分なexeファイルを作成するだけで、msiは別のファイルとして含める必要があるため、これは適切ではありません.

これが非常にまれなタスクだとは信じられませんが、他に多くを見つけることができませんでした.誰かが私に良いバンドル/ブートストラッププログラムを教えてもらえますか?

4

2 に答える 2

2

Advanced Installerには、「 EXE を MSI に変換する」という機能があり、MSI パッケージをラップするためにも使用できます。

Advanced Installer のもう 1 つのオプションは、2 つの MSI パッケージを前提条件ページで機能ベースの前提条件として単純に追加することです。

于 2012-06-27T06:01:07.160 に答える
1

私はNSISを使用しました。これは無料で、最小限で、スクリプト可能で、適切な圧縮を提供します。

私のスクリプトは次のとおりです。

!include x64.nsh

AutoCloseWindow true
SilentInstall silent
SetCompressor /SOLID lzma

Section
Initpluginsdir
${If} ${RunningX64}
  File "/oname=$pluginsdir\inst.msi" "64bit.msi"
${Else}
  File "/oname=$pluginsdir\inst.msi" "32bit.msi"
${EndIf}
ExecWait '"msiexec" /i "$pluginsdir\inst.msi"'
SectionEnd

これにより、追加の UI なしで正しい MSI インストーラーを起動するインストーラーにコンパイルされます。

于 2012-06-27T13:49:45.043 に答える