8

WiX 安装程序安装 silverlight Web 应用程序。它可以在 32 或 64 位应用程序池下工作。但是安装完成后,我看到选定的应用程序池始终设置为启用 32 位应用程序。甚至对于 64 位池也是如此。它不适合,因为它可以为以前安装的 64 个应用程序更改现有池。我没有明确更改此参数。问题的原因可能是什么?

添加的代码示例:

<Component Id="WebAppVDirComponent"
    Guid="C7A4B0E8-2389-4A2A-B285-96960BEE1C52" KeyPath="yes">
    <Condition><![CDATA[RBGROUP_HOSTING = "iis"]]></Condition>
        <iis:WebVirtualDir Id="VDir"
                Alias="[WEB_APP_NAME]"
                Directory="INSTALLDIR"
                WebSite="TheWebSite" >
        <iis:MimeMap Id="SilverlightMimeType" Extension=".xap" Type="application/x-silverlight-app" />
        <iis:WebApplication Id="WorkWebApplication"
                Name="[WEB_APP_NAME]" WebAppPool="TheAppPool"/>
        </iis:WebVirtualDir>
        <iis:WebAppPool Id="TheAppPool" Name="[APP_POOL_NAME]" ></iis:WebAppPool>           
        <CreateFolder/>
</Component>
4

1 回答 1

19

在我看来,这是以一种非常优雅的方式设计的。

如果将<iis:WebAppPool>元素声明放置到<Component>标记为Win64="yes",将创建应用程序池并将Enable32bit标志设置为false。否则(即默认情况下),它将被创建并Enable32bit设置为true.

我不确定当您不使用安装创建应用程序池时它会如何表现,而是参考现有的。我希望它根本不会改变这个标志。您可以对此进行试验,以了解它是如何工作的。

附带说明:我会避免安装到现有的应用程序池或网站。这要维护起来要困难得多 - 请记住,卸载后您必须让机器处于“预安装”状态。这意味着您必须维护备份/恢复您使用自定义操作更改的所有内容的状态... Brrr ...

于 2012-07-27T14:09:15.397 回答