2013-06-19 37 views
6

tôi đã sử dụng WiX 3.7 để viết một bootstrapper dùng để cài đặt .net 4.5 đầu tiên và sau đó MSI ứng dụng của tôi là gì:sự khác biệt giữa NetFx45WebLink và NetFx45RedistLink

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

Các WiX documentation nói rằng NetFx45Redist là một thiết lập độc lập trong khi NetFx45Web là một thiết lập web. Sau khi tôi đã tạo bootstrapper có Id được đặt thành NetFx45Redist, nó có cùng kích thước so với khi tôi tạo nó với mã số NetFx45Web được chỉ định. Tôi đã tò mò vì vậy tôi đã tải về các nguồn WiX (v3.7). Tôi đã ngạc nhiên khi thấy rằng có rất ít sự khác biệt giữa hai yếu tố PackageGroup.

DownloadUrl cho NetFx45Webhttp://go.microsoft.com/fwlink/?LinkId=225704, trong khi số NetFx45Redisthttp://go.microsoft.com/fwlink/?LinkId=225702. Theo thuộc tính RemotePayload\@SizeNetFx45Web là 1005568 byte và NetFx45Redist là 50352408 byte.

Tôi mong đợi rằng NetFx45Redist sẽ bao gồm thiết lập .net 4.5 trong bootstrapper của tôi và không cần tải xuống. Tôi thấy điều đó sai. Tôi nên sử dụng PackageGroup nào và sự khác nhau giữa 2 bản cài đặt 4.5 .net được tải xuống là gì?

Trả lời

7

Cả hai nhóm gói đều được tác giả tải xuống tệp từ Microsoft. Cả hai đều cung cấp đầy đủ các thiết lập của Microsoft .NET 4.0 framework. Cái nhỏ hơn là bootstrapper mà sau đó tải xuống chỉ những phần hệ thống bị thiếu. Cái lớn hơn có tất cả các phần mà bất kỳ hệ thống nào có thể cần.

Thật đáng ngạc nhiên khi WixNetFxExtension không cung cấp nhóm gói không tải xuống. Tuy nhiên, vì bạn đã nhìn trộm vào mã nguồn NetFx4.5.wxs, bạn nên sao chép các thuộc tính mà bạn muốn vào nhóm gói của riêng bạn.

EDIT:

Tôi cũng cần chỉ là một bootstrapper mất đối số dòng lệnh như mô tả here. -layout dvd sẽ tải các gói xuống thư mục có tên dvd, có thể được sử dụng để cài đặt ngoại tuyến. (Rõ ràng, NetFx45Web sẽ không thích hợp cho điều đó.)

+1

Tôi đã chơi với nó một chút và đây là những gì tôi tìm thấy: 1) khi trình cài đặt web được tải xuống, nó chiếm ít không gian hơn nhưng trong khi sửa chữa toàn bộ khuôn khổ .net cần tải xuống lại nếu nó bị thiếu 2) khi trình cài đặt độc lập được tải xuống, nó mất thêm khoảng 50mb (được phản ánh trong kích thước của ứng dụng trong Chương trình và Tính năng) nhưng trong quá trình sửa chữa không cần tải xuống. – ceco

Các vấn đề liên quan