2012-11-26 48 views
2

下面的代碼,一切編譯沒有任何錯誤。但是,當我運行生成的MSI,我沒有看到在IIS中創建的任何網站:wix意想不到的孩子元素'網站'

<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi' xmlns:iis='http://schemas.microsoft.com/wix/IIsExtension'> 
    <iis:WebSite Id='dp_service_site' Description='Default Web Site'> 
    <iis:WebAddress Id="AllUnassigned" Port="80" /> 
    </iis:WebSite> 
    . 
    . 
    <DirectoryRef Id='DPDIR'> 
    <Component Id='dservice' DiskId='1' Guid ='21e0c49d-e9a6-4de6-894c-d0632ea45f5a'> 
     <iis:WebVirtualDir Id='dp_wvd' Alias="DocumentPublisher" Directory='DPDIR' WebSite='dp_service_site'>   
     <iis:WebApplication Id='dp_app' Name='Default Application' WebAppPool='dp_pool' Isolation='medium'> 
     </iis:WebApplication> 
     </iis:WebVirtualDir>   
     <iis:WebAppPool Id='dp_pool' Identity='networkService' Name='dservice' /> 
    </Component> 
    </DirectoryRef> 
    . 
    . 
    <Feature Id='Service' Title='Document Service' Level='1'> 
    <ComponentRef Id='dservice' /> 
    </Feature> 
</Wix> 

我得到的錯誤。按照上面提到的,我已經更改了代碼。 我附上了屏幕截圖以及此

回答

2

我相信這裏的問題是,你不是在一個組件中創建網站,所以相反,安裝程序只是試圖對現有網站進行查找。相反,你應該有這樣的事情:

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

    . 
    . 
    <DirectoryRef Id='DPDIR'> 
    <Component Id='dservice' DiskId='1' Guid ='21e0c49d-e9a6-4de6-894c-d0632ea45f5a'> 
     <iis:WebVirtualDir Id='dp_wvd' Alias="DocumentPublisher" Directory='DPDIR' WebSite='dp_service_site'>   
     <iis:WebApplication Id='dp_app' Name='Default Application' WebAppPool='dp_pool' Isolation='medium'> 
     </iis:WebApplication> 
     </iis:WebVirtualDir>   
     <iis:WebAppPool Id='dp_pool' Identity='networkService' Name='dservice' /> 
    </Component> 
    <Component Id='website'> 
     <iis:WebSite Id='dp_service_site' Description='Default Web Site' Directory='DPDIR'> 
     <iis:WebAddress Id="AllUnassigned" Port="80" /> 
     </iis:WebSite> 
    </Component> 
    </DirectoryRef> 
    . 
    . 
    <Feature Id='Service' Title='Document Service' Level='1'> 
    <ComponentRef Id='dservice' /> 
    <ComponentRef Id'website' /> 
    </Feature> 
</Wix> 

那麼,網站將被創建爲一個單獨的組件。我相信既然你已經指定了一個端口號,如果該端口上已經存在一個網站,那麼它將修改該現有網站而不是創建一個新網站。

UPDATE:由於錯誤提示,您需要爲指向'DPDIR'的WebSite元素添加一個Directory屬性。我已經更新了上面的示例。

+0

我已更改並出現錯誤 – Rakesh

+0

我編輯了我的示例以修復所述的錯誤。 – ChrisPatrick