wix 自定义操作配置应用程序池

发布于 2024-12-13 17:16:08 字数 674 浏览 0 评论 0原文

我正在尝试使用帮助自定义操作更改我的 Web 应用程序的应用程序池

    <InstallExecuteSequence>
    <Custom Action="ConfigureAppPools" Before="InstallFinalize">Application pool         configured</Custom>
  </InstallExecuteSequence>

  <!-- Snip -->                                          
    <CustomAction Id="ConfigureAppPools" Execute="deferred" Impersonate="no" Return="check" Directory="TARGETDIR" ExeCommand="[SystemFolder]inetsrv\appcmd set site /site.name:&quot;Default Web Site&quot;/[path='/MyWeb'].applicationPool:MyWeb"/>

,但出现以下错误 LGHT0204:ICE03:格式字符串无效;表:CustomAction,列:目标,键:ConfigureAppPools

如何修复?

I'm trying change application pool for my web application with help custom action

    <InstallExecuteSequence>
    <Custom Action="ConfigureAppPools" Before="InstallFinalize">Application pool         configured</Custom>
  </InstallExecuteSequence>

  <!-- Snip -->                                          
    <CustomAction Id="ConfigureAppPools" Execute="deferred" Impersonate="no" Return="check" Directory="TARGETDIR" ExeCommand="[SystemFolder]inetsrv\appcmd set site /site.name:"Default Web Site"/[path='/MyWeb'].applicationPool:MyWeb"/>

but get following error
LGHT0204 : ICE03: Invalid format string; Table: CustomAction, Column: Target, Key(s): ConfigureAppPools

How fix ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

絕版丫頭 2024-12-20 17:16:08

您应该转义 ExeCommand 属性中的方括号(path=... 周围的方括号),因为否则 MSI 认为它是必须格式化的属性。试试这个:

<CustomAction Id="ConfigureAppPools" Execute="deferred" Impersonate="no" Return="check" Directory="TARGETDIR" ExeCommand="[SystemFolder]inetsrv\appcmd set site /site.name:"Default Web Site" /[\[]path='/MyWeb'[\]].applicationPool:MyWeb"/>

您想要转义的每个方括号都必须以反斜杠为前缀,并包装到另一对方括号中。

You should escape the square brackets in your ExeCommand attribute (those around path=...), because otherwise MSI thinks it is a property it must format. Try this:

<CustomAction Id="ConfigureAppPools" Execute="deferred" Impersonate="no" Return="check" Directory="TARGETDIR" ExeCommand="[SystemFolder]inetsrv\appcmd set site /site.name:"Default Web Site" /[\[]path='/MyWeb'[\]].applicationPool:MyWeb"/>

Each square bracket you'd like to escape must be prefixed with backslash, and wrapper into another pair of square brackets.

贪恋 2024-12-20 17:16:08

文本已配置应用程序池 不是有效条件。

请参阅条件语句语法,或者此处有一些示例。

the text Application pool configured is not a valid condition.

See the Conditional Statement Syntax, or some examples here.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文