维克斯自定义操作配置应用程序池
问题描述:
我试图改变应用程序池,我的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:"Default Web Site"/[path='/MyWeb'].applicationPool:MyWeb"/>
,但得到以下错误 LGHT0204:ICE03:无效的格式字符串;表:CustomAction,列:目标,键:ConfigureAppPools
如何解决?
答
您应该在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"/>
你想逃避每个方括号必须用反斜杠为前缀,并包装成另一组方括号。
试图解决,但不能举一个例子 – user1030817