2009-08-13 21 views
5

Estoy tratando de crear un instalador de sitio web y estoy usando wix. Estoy utilizando este tutorial http://www.dalun.com/wix/01.05.2007.htmwix 3.0 elemento secundario inesperado 'Sitio web'

que tenía que cambiar mi script para usar

<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> 

porque se quejaba de

<Wix xmlns='http://schemas.microsoft.com/wix/2003/01/wi'> 

así que mi escritura se parece a esto

<?xml version='1.0' encoding='Windows-1252'?> 
<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'> 
    <Product Id='6197b262-b2d8-464c-9d0b-6cade171b46f' Name='WixWebSiteExample' Language='1033' Version='0.0.0.0' Manufacturer='Corporation'> 
     <Package Id='439d5627-cc07-4a41-9f50-b201ae3f8202' Description='Creating a web site with WiX' Comments='Creating a web site with WiX' InstallerVersion='200' Compressed='yes' /> 

     <Media Id='1' Cabinet='product.cab' EmbedCab='yes' /> 

     <Directory Id='TARGETDIR' Name='SourceDir'> 
     <Directory Id='ProgramFilesFolder' Name='PFiles'> 
      <Directory Id='ApplicationFolder' Name='AppDir'> 
       <Component Id='WebSiteComponent' Guid='6b27e78e-bcbc-462a-bd7a-50cf991c7d39' DiskId='1'> 
        <File Id='WixExampleFile' Name='simple.txt' src='bin\simple.txt' /> 
        <WebSite Id='DefaultWebSite' Description='My First Web Site Created With WiX' Directory='ApplicationFolder'> 
        <WebAddress Id="AllUnassigned" Port="80" /> 
        </WebSite> 
       </Component> 
       <Component Id="WebVirtualDirComponent" Guid="8d7c59c0-b84d-40d9-b3a5-0c73b6487ae4"> 
        <WebVirtualDir Id="VDir" Alias="Test" Directory="ApplicationFolder" WebSite="DefaultWebSite"> 
         <WebApplication Id="TestWebApplication" Name="Test" /> 
        </WebVirtualDir> 
       </Component> 
      </Directory> 
     </Directory> 
     </Directory> 

     <Feature Id='TestProductFeature' Title='Wix File Product Feature' Level='1'> 
     <ComponentRef Id='WebSiteComponent' /> 
     <ComponentRef Id='WebVirtualDirComponent' />   
     </Feature> 
    </Product> 
</Wix> 

Recibo este error

C: \ Downloads \ wix3.0.5419.0-binaries \ firstWebsite \ firstwebsite.wxs (13): error CN DL0005: El elemento Component contiene un elemento secundario inesperado 'WebSite'. C: \ Descargas \ wix3.0.5419.0-binaries \ firstWebsite \ firstwebsite.wxs (18): error CN DL0005: El elemento Component contiene un elemento secundario inesperado 'WebVirtualD ir'.

¿La etiqueta del sitio web no es compatible con wix 3.0?

Respuesta

7

En wix 3.0, el elemento del sitio web está en different namespace. Declarar el espacio de nombres cambiando el elemento wix de

<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'> 

a

<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi' 
    xmlns:iis='http://schemas.microsoft.com/wix/IIsExtension'> 

y luego referirse al elemento <WebSite> como <iis:WebSite>. Agregue el mismo prefijo a los otros elementos relacionados con la web.

Además, necesita ejecutar candle.exe y light.exe con esta opción: -ext WixIIsExtension.

2

Al actualizar desde el código fuente de WiX v2 al código fuente de WiX v3, intente utilizar la herramienta WixCop.exe de WiX v3. Arreglará este tipo de cosas automáticamente.

0

Solo agregue referencia a WixIIsExtension.dll para el Proyecto de configuración de Wix. Dll se puede encontrar en el directorio bin de instalación. p.ej. C: \ Archivos de programa \ WiX Toolset v3.8 \ bin \ WixIIsExtension.dll

Cuestiones relacionadas