質問

クライアントのマシンにまだインストールされていない必要な.NET FrameworkをダウンロードするWixパッケージを入手するにはどうすればよいですか?インストール済みの.NETバージョンを確認する条件は既にありますが、見つからない場合にダウンロードしてインストールする方法がわかりません。

ClickOnceは、プロパティページの前提条件を確認することにより、これを自動的に行います。他のいくつかの要件のため、Wixでそれを行う必要があります。

ありがとう!

役に立ちましたか?

解決

更新 2017年8月: この非常に良い答えは今では時代遅れに見えます。 「スレッド」の他の回答も読んでください。いくつかの異なる「ブートストラップオプション」について。


Wixによって作成されたMSIパッケージはそれを行うことができません。 Windowsインストーラーはかなり制限されており、1つのMSIファイル(インストーラー)が別のMSIファイル(.NET Frameworkインストーラー)を呼び出すことは許可されていません。

指定された前提条件を確認し、必要に応じてそれらをダウンロードしてインストールし、MSIインストーラーを起動できる、いわゆるブートストラップ(setup.exeファイル)を作成する必要があります。

ブートストラップを作成する1つの方法は、Visual StudioまたはMSBuildタスクGenerateBootstrapperを使用することです。詳細はこちらのリンクをご覧ください:

  

http://wix.mindcapers .com / wiki / Bootstrapper

ユーザーに単一のインストーラーのみを提供する場合は、setup.exeファイルとMSIパッケージの両方を含む自己膨張インストールパッケージを作成することができます。 iexpress 、これはWindowsに付属しています。

例を示す別のリンク: http://www.clariusconsulting.net/blogs/pga/comments/42831.aspx

他のヒント

Wixには、burnと呼ばれる独自のブートストラップが含まれます。ご覧ください: http://robmensching.com/ blog / posts / 2009/7/14 / Lets-talk-about-Burn

DotNetInstaller は、多くの開発者から優れた安定したブートストラップとして推奨されています。

更新:URLをDotNetInstallerに更新、2017年8月。

これはWiX 3.6以降でサポートされるようになりました。ドキュメントはまだ大ざっぱですが、まずは How To:.NET Frameworkを使用してインストールする書き込み

ブートストラップを使用するwix 3.6では、必要な場合にダウンロードする必要条件として.net 4.0を追加する必要があります。

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

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

<PackageGroupRef Id="NetFx40Web"/>

それは本当にそれです!

詳細情報: wixnetfxextensionのドキュメント

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top