我正在使用WiX 3来设置我的Web应用程序,大多数情况下我只是在当前版本的顶部安装新版本的项目,比如每周左右升级一次Web应用程序。
我想知道是否有办法明确要求IIS通过WiX回收给定的应用程序池(删除并创建 - 再次,它不适合我的情况),如果没有,我们有办法解决完成那个?
答案 0 :(得分:5)
使用appcmd.exe命令创建一个调用recycle的自定义操作。
在你的情况下:
<Product>
. . .
<CustomAction Id="CA_RecycleAppPool"
Execute="deferred"
Impersonate="no"
Return="check"
Directory="TARGETDIR"
ExeCommand="[SystemFolder]inetsrv\appcmd recycle apppool /apppool.name:"[APPPOOLNAME]"" />
<InstallExecuteSequence>
<Custom Action="CA_RecycleAppPool" Before="InstallFinalize" />
</InstallExecuteSequence>
</Product>