2016-12-28 19 views
1

私はWiX Toolset 3.10から4.0-preに移行しています。 namespacesを更新しましたが、NAntビルドログにはまだいくつかのエラーが発生しています。WiX 3.10からWiX 4.0への移行:未処理の拡張要素

私はInstaller.wxsファイルがあります:RegPkg.exe経由VS2012Package.wxi.bakファイルが生成され

<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" 
xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util"> 
<Product ...> 
    <DirectoryRef Id="FolderCommon"> 
     ... 
     <Component Id="Registration_Component_12" Guid="..." KeyPath="yes"> 
      <?include VS2012Package.wxi.bak?> 
      ... 
     </Component> 
     ... 
    </DirectoryRef> 
    ... 
</Product> 

<Include> 
<Registry Root="HKLM" Key="SOFTWARE\Microsoft\VisualStudio\11.0\InstalledProducts\VsPackage"> 
    <Registry Name="Package" Value="..." Type="string" /> 
    <Registry Name="UseInterface" Value="1" Type="integer" /> 
</Registry> 
... 

そして、私のビルドを次のようなエラーで失敗します:

私は、名前空間「 http://wixtoolset.org/schemas/v4/wxs」を追加しようとしました
[exec] ...\Installer\VS2012Package.wxi.bak(3) : error CNDL0200 : The Component element contains an unhandled extension element 'Registry'. Please ensure that the extension for elements in the '' namespace has been provided. 

構築する前に外部スクリプトを使用してVS2012Package.wxi.bakタグが、ちょうど任意の助けerror CNDL0005 : The Component element contains an unexpected child element 'Registry'

おかげに変更エラー「<は>を含めます」!

答えて

1

Registry要素はWiX v3.xで廃止され、WiX v4.xでは廃止されました。代わりにRegistryValueを使用してください。

+0

'Registry'要素はRegPkg.exeによって生成されます。このファイルを外部スクリプトで書き換える以外の解決策はありますか? –

+0

RegPkg.exeは現代版のWiXを明示的にサポートする必要があります。それはもともとWiX v2.0をサポートしていて、それを維持していませんでした。 –

関連する問題