1. ホーム
  2. .net

[解決済み] NetFx45WebLinkとNetFx45RedistLinkの違いは何ですか?

2022-02-15 18:19:08

質問事項

WiX 3.7を使用して、最初に.net 4.5をインストールし、次にアプリケーションのMSIをインストールするブートストラッパーを作成しました。

<Chain>
  <PackageGroupRef Id="NetFx45Redist"/>
  <MsiPackage Id="MainAppPackage"
              After="NetFx45Redist"
              SourceFile="..\bin\Debug\MyApp.msi"/>
</Chain>

WiXドキュメント には、次のように書かれています。 NetFx45Redist はスタンドアロンセットアップであるのに対し NetFx45Web はWebセットアップです。ブートストラッパーをビルドした後、Idを NetFx45Redist でビルドしたときと同じサイズになりました。 NetFx45Web Idを指定しました。気になったのでWiXのソース(v3.7)をダウンロードしてみました。との差がほとんどないことに驚きました。 PackageGroup 要素を使用します。

DownloadUrl に対して NetFx45Web http://go.microsoft.com/fwlink/?LinkId=225704 であるのに対し NetFx45Redist http://go.microsoft.com/fwlink/?LinkId=225702 . によると RemotePayload\@Size 属性 NetFx45Web は1005568バイトであり NetFx45Redist は50352408バイトです。

と予想していたのですが NetFx45Redist は、私のブートストラッパーに.net 4.5セットアップを含み、ダウンロードは必要ないでしょう。それは間違っているようです。どの PackageGroup また、ダウンロードした2つの.net 4.5のインストールは何が違うのでしょうか?

解決方法は?

どちらのパッケージグループも、マイクロソフトからファイルをダウンロードするようにオーサリングされています。どちらもMicrosoft .NET 4.0フレームワークのフルセットアップを提供します。小さい方はブートストラッパーで、システムに欠けている部分のみをダウンロードします。大きい方は、どんなシステムにも必要なすべてのパーツが含まれています。

WixNetFxExtensionが非ダウンロードのパッケージグループを提供していないのは少し意外です。しかし、あなたはすでに NetFx4.5.wxs のソースコードから、必要な属性を独自のパッケージグループにコピーするのは簡単なはずです。

EDIT

また、ブートストラッパーはコマンドライン引数を取ることを指摘しておきます。 ここで . -layout dvd という名前のフォルダにパッケージをダウンロードします。 dvd オフラインのインストールに使用することができます。(もちろん、NetFx45Webはそれには適さないでしょう)。