2016-11-29 11 views
0

での.NETフレームワークの前提条件は、これは実際にこのポストからさらに質問した確認することができます。私は最新のWiX 3.8のバージョンで問題に遭遇していたHow Can I check .NET framework 4.5 prerequisites?はどのように私はWiXの

でも、でも、私が何を考え、次の方向であります、何の.NETは、トップレベルのWiXタグ

xmlns:netfx="http://schemas.microsoft.com/wix/NetFxExtension" 

2とWXSのアップデートにより)

1.認識されない)propertyRefタグを追加(私はそれが製品のセクションに行ってきました信じて - かもしれません間違い)

<WIX> 
    <PRODUCT> 

    <PropertyRef Id="NETFRAMEWORK45"/> 

3)私はキャンドルライトを使用

4)製品のセクションで、私もPropertyRefと同じレベルで行ったと考え条件ブロックを追加ログはトラブル

を示しているようだどちら
echo running the packaging step: wix candle DEV %VERSION% 

call "candle" myproject.wxs -ext WiXNetFxExtension -ext WixUtilExtension -I.\Includes\Dev -dVersion="%VERSION%" -dShortVersion="%SHORTVERSION%" -dBuildTime="%BuildTime%" > dev1.log 

echo running the packaging step: wix light DEV 

call "light" -sice:ICE50 -sice:ICE61 -sice:ICE64 -ext WiXNetFxExtension -ext WixUtilExtension -o myproject.msi myproject.wixobj > dev2.log 

batファイルからのコマンドライン

dev1.log:

WindowsインストーラXMLツールセットコンパイラバージョン3.8.1128.0著作権 (C)Outercurve財団。全著作権所有。

myproject.wxs

dev2.logは、いくつかの警告がありますが、関係ありません:

WindowsインストーラXMLツールセットリンカバージョン3.8.1128.0著作権(C) Outercurve財団。全著作権所有。

C:\ SVN \ myproject_Trunkクライアント\ビルド\ \ WiXの\ myproject.wxs(251):エラー LGHT0204:ICE38:コンポーネントNonAdvertisedShortcutはユーザー プロファイルにインストールされます。 ファイルではなく、KeyPathとしてHKCUのレジストリキーを使用する必要があります。 C:\ SVN \ myproject_Trunk \ client \ Build \ wix \ myproject.wxs(259): エラーLGHT0204:ICE38:コンポーネントNonAdvertisedShortcut2が ユーザープロファイルにインストールされます。 KeyPathとしてHKCUのレジストリキー、 を使用する必要があります。 C:\ SVN \ myproject_Trunk \ client \ Build \ wix \ myproject.wxs(357) :警告LGHT1076:ICE40:REINSTALLMODEは、 プロパティで定義されています。これは困難を引き起こすかもしれません。 C:\ SVN \ myproject_Trunk \ client \ Build \ wix \ myproject.wxs(251):エラー LGHT0204:ICE43:コンポーネントNonAdvertisedShortcutに広告なし のショートカットがあります。 ではなく、KeyPathとしてHKCUのレジストリキーを使用する必要があります。 LGE0204:ICE43:コンポーネントNonAdvertisedShortcut2には、 の非公開ショートカットがあります。C:\ SVN \ myproject_Trunk \ client \ Build \ wix \ myproject.wxs(259): HKCUのレジストリキーは、ファイルではなく としてKeyPathを使用する必要があります。 C:\ SVN \ myproject_Trunk \ client \ Build \ wix \ myproject.wxs(30):警告 LGHT1076:ICE48:ディレクトリ 'DRIVE.C'がローカルドライブの プロパティテーブルにハードコードされているようです。 C:\ SVN \ myproject_Trunk \ client \ Build \ wix \ myproject.wxs(254):警告 LGHT1076:ICE90:ショートカット 'ScKey001'に パブリックプロパティ(すべてのCAPS)のディレクトリがあり、ユーザープロファイルの下にありますディレクトリ。この は、ALLUSERSプロパティの値が のUIシーケンスで変更されると問題が発生します。 ショートカット 'ScKey002'には パブリックプロパティ(すべて大文字)のディレクトリがあり、ユーザープロファイルの下にあります。ディレクトリ。この は、ALLUSERSプロパティの値が のUIシーケンスで変更されると問題が発生します。

私はlightを-vオプションで実行しており、ICEオプションも削除しました。

拡張機能がMSIにパッケージ化されていないようです。

冗長ログを取得するためにmsiexecを実行しても、何も表示されないようです。

どこか簡単な間違いをしたような気がしました。

答えて

0

このプロジェクトはもともとMSIbuildから作成されたもので、Wixダークユーティリティはwxsを構築するために使用されていました。カスタムダイアログボックスとインストールシーケンスが含まれていました。カスタムインストールシーケンスとダイアログタグを削除し、-ext WixUIExtensionを追加することで、まだ.NET 4.5がインストールされていない.NET 4.5 PCとPCで正しいメッセージが表示されました。