1

WIX に問題があります。MSI のインストール中に、.NET Framework 4.0 がインストールされているかどうかを確認したいのですが、インストールされていない場合は dotnet msi からインストールする必要があります。

別の MSI から MSI を呼び出すことができないため、.NET フレームワークの検証とインストールを実行する VB スクリプトを作成しました。

問題は、インストールされたディレクトリからインストールした後にそのVBスクリプトを実行したいということです。考えられるすべての方法を試しましたが、取得できませんでした。

これがWIXコードの一部です。

    <CustomAction Id="StartAppOnExit" FileKey="DotNetFrameworkCheck.vbs"
   Execute="deferred" Return="asyncWait" />

    <InstallExecuteSequence>
      <Custom Action="StartAppOnExit" After="InstallFinalize"></Custom>
    </InstallExecuteSequence>

FileKey の場所

 <File Id="DotNetFrameworkCheck.vbs" Source="Build_\message.vbs" />

コードで間違ったことを知ってもいいですか??

4

2 に答える 2

2

.NET またはその他の前提条件をインストールするための推奨される方法は、ブートストラップ exe からです。このブートストラップは、最初に .NET インストーラーを呼び出し、次に独自の MSI を呼び出します。

Wix 3.6 には、このようなブートストラップを生成する機能が含まれています。「方法: Burn を使用して .NET Framework をインストールする」を参照してください。

于 2012-06-16T19:44:44.817 に答える
0

さらに、すべてのカスタム アクションは と の間で実行する必要がありInstallInitializeますInstallFinalize。を変更する必要がありますInstallExecuteSequence

于 2012-06-18T10:36:09.763 に答える