2

更新: これは実際に機能していることが判明しましたが、インストール ファイルはデフォルトで出力ディレクトリにコピーされていました。それらが存在しない状態でセットアップを実行すると、必要に応じてファイルがダウンロードされます。

私はドキュメントを読み、WiX に .NET フレームワークをインストールする方法のガイドに従いましたが、フレームワークのインストール ファイルが含まれているため、ビルドの出力は非常に大きくなります (100 MB から 200 MB の間)。

エンド ユーザーにとってこのような大きなダウンロード サイズを回避したいので、WiX にオンライン インストーラー (http://www.microsoft.com/en-us/download/details.aspx?id=31) を使用させることは可能ですか?すでにフレームワークを持っているユーザーに大規模なセットアップをダウンロードさせるのではなく?

現在、私のマークアップはドキュメントとほぼ同じですが、参照する必要がある人のために次のように示しています。

  <ItemGroup>
    <BootstrapperFile Include="Microsoft.Net.Framework.3.5">
      <ProductName>.NET Framework 3.5</ProductName>
    </BootstrapperFile>
    <BootstrapperFile Include="Microsoft.Windows.Installer.3.1">
      <ProductName>Windows Installer 3.1</ProductName>
    </BootstrapperFile>
  </ItemGroup>
  <Target Name="AfterBuild">
    <GenerateBootstrapper 
      ApplicationFile="$(TargetFileName)" 
      ApplicationName="Application Name" 
      BootstrapperItems="@(BootstrapperFile)" 
      ComponentsLocation="HomeSite" 
      CopyComponents="True" 
      OutputPath="$(OutputPath)" 
      Path="C:\Program Files (x86)\Microsoft SDKs\Windows\v6.0A\Bootstrapper\" />
  </Target>
4

3 に答える 3

2

これは実際に機能していることがわかりますが、インストールファイルはデフォルトで出力ディレクトリにコピーされていました。それらが存在しない状態でセットアップを実行すると、必要に応じてファイルがダウンロードされます。

于 2012-05-27T21:14:34.087 に答える
1

Sunilが述べたように、これを行う最も簡単な方法は、ブートストラッパーを使用することです。WiXブートストラッパーが機能するようになったら、前提条件として.Net4.0を追加するために必要なことはすべてです。

a)ファイルWixNetFxExtension.dllへの参照をBootstrapper/マネージドBootstrapperアプリプロジェクトに追加します

b)チェーンの最初のアイテムとして以下を追加します。

<PackageGroupRef Id="NetFx40Web"/>

それでおしまい!

上記は、必要に応じてインターネット経由で.net4をダウンロードします。詳細とオプションはこちら:wixnetfxextensionドキュメント

于 2013-03-20T14:49:11.873 に答える
0

バインドのセットアップに使用できるブートストラップは多数あります。.net フレームワークの Web セットアップをソフトウェアとバインドできます。前提条件がインストールされていない場合、ツールは .net フレームワークをインストールします。

私も同じ要件があり、dotNetInstallerに行きました。無料のツールです。

于 2012-05-27T19:42:11.510 に答える