4

ファイル セットに C++ ランタイム DLL への 1 つ以上の依存関係を持つ DLL が含まれている場合、VCRedist.exe からファイルをインストールする必要があります。各 DLL は C++ ランタイムの特定のバージョンに依存しているため、これは難しい場合があります。

  • ランタイム再配布可能ファイルをインストーラーに自動的に追加するにはどうすればよいですか?

  • WinSxS で異なるバージョンの C++ ランタイムを必要とする DLL を処理するにはどうすればよいですか?

4

3 に答える 3

1

ライブラリに必要な最新バージョン (最高) のバージョンと、古いバージョンを新しいバージョンにリダイレクトするポリシー ファイルをインストールする必要があります。

どちらも、Visual Studio と共にインストールされたマージ モジュールで実行できます。通常は にありC:\Program Files\Common Files\Merge Modulesます。インストーラーで Visual C++ 再頒布可能パッケージをインストールする方法MergeRefの要素と例を参照してください。また、ポリシー マージ モジュールをインストールに追加する必要があります。

于 2011-05-16T18:04:35.997 に答える
0

最新の vcredist がインストールされていることを確認するだけで、古いバージョンのサポートが自動的に含まれます。

インストーラーが実行される前に、ブートストラップを使用してランタイムをインストールするのが最も簡単だと思います。独自のパッケージを作成する必要があるかもしれませんが、これにはBootstrapper Manifest Generatorを使用すると簡単です。

product.xml で、インストール チェックを追加して、2 回インストールされていないことを確認できます。次に例を示します。

  <InstallChecks>
    <MsiProductCheck Property="VCRedistInstalled" Product="{1F1C2DFC-2D24-3E06-BCB8-725134ADF989}"/>
  </InstallChecks>

その他の GUIDについては、こちらを参照してください。

于 2011-05-16T16:36:06.413 に答える
0

heat も Votive も、要求された機能をサポートしていません。ランタイム DLL は手動で追加する必要があります。

于 2011-05-30T11:00:58.760 に答える