为什么在Wix中是iis:需要WebAddress端口?

时间:2011-09-07 11:19:49

标签: iis wix installer windows-installer

为什么在Wix中是iis:如果可以并且在IIS中为“网站”设置端口,则需要WebAddress端口?

我尝试过让他们与众不同。安装不会失败,但会使用网站的端口。好像很奇怪?

代码段

  <Component Id="DataAccessorService_VirtualDir" Guid="*">
    <CreateFolder />
    <iis:WebVirtualDir Id="DataAccessorService_VirtualDir" 
                       Alias="DataAccessorService" 
                       Directory="DataAccessorServiceDir" 
                       WebSite="XCBServiceWebsite">
      <iis:WebApplication Id="DataAccessorService_VirtualDir" 
                          Name="DataAccessorService" Isolation="medium" />
      <iis:WebDirProperties Id="DataAccessorService_WebDirProperties" 
                            DefaultDocuments="DataAccessor.svc" />
    </iis:WebVirtualDir>
  </Component>

...

<iis:WebSite Id="XCBServiceWebsite" Description="BankDotNet">
  <iis:WebAddress Id="AllUnassigned" Port="85" />
</iis:WebSite>

感谢。

1 个答案:

答案 0 :(得分:3)

对于WiX v2.0和WiX v3.0,WebAddress是检测IIS中的网站的方式。 IP:Port:Header元组是IIS6中唯一必须唯一的东西,这就是它用于检测的原因。在那个元组中,端口是唯一不可选的东西。

在WiX v3.5 +中,我认为WiX IIS自定义操作已得到增强,可以使用Description和SiteId来处理查找网站。