What is the difference between NetFx45WebLink and NetFx45RedistLink

白昼怎懂夜的黑 提交于 2019-12-10 13:43:11

问题


I used WiX 3.7 to write a bootstrapper which installs .net 4.5 first and then my application's MSI:

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

The WiX documentation says that NetFx45Redist is a standalone setup while the NetFx45Web is a web setup. After I built the bootstrapper with Id set to NetFx45Redist it had the same size compared to when I build it with NetFx45Web Id specified. I was curious so I downloaded the WiX sources (v3.7). I was surprised to see that there was little difference between the two PackageGroup elements.

The DownloadUrl for NetFx45Web is http://go.microsoft.com/fwlink/?LinkId=225704, while the one for NetFx45Redist is http://go.microsoft.com/fwlink/?LinkId=225702. According to the RemotePayload\@Size attribute NetFx45Web is 1005568 bytes and NetFx45Redist is 50352408 bytes.

I expected that NetFx45Redist will include the .net 4.5 setup in my bootstrapper and no download will be required. I see that's wrong. Which PackageGroup should I use then and what is the difference between the 2 downloaded .net 4.5 installations?


回答1:


Both package groups are authored to download the files from Microsoft. Both provide full setups of Microsoft .NET 4.0 frameworks. The smaller one is a bootstrapper that then downloads just the pieces the system is missing. The larger one has all the pieces any system might need.

It is a bit surprising that WixNetFxExtension doesn't offer a non-download package group. But, since you have already peeked into the NetFx4.5.wxs source code, it should be a simple matter to copy the attributes that you want into your own package group.

EDIT:

I should also point that a bootstrapper takes command-line arguments as described here. -layout dvd would download packages to a folder named dvd, which can be used for off-line installation. (Obviously, NetFx45Web wouldn't be appropriate for that.)



来源:https://stackoverflow.com/questions/17190787/what-is-the-difference-between-netfx45weblink-and-netfx45redistlink

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!