我正在为我的网站编写安装程序。安装程序使用this指令创建应用程序池,虚拟目录并将虚拟目录分配给应用程序池。所有工作,但...如果我在安装我的程序后立即重置IIS,我的应用程序池被删除,但如果我打开如果在Web浏览器中打开我的网站然后重置IIS,应用程序池不会被删除。 为什么会这样?
我正在使用IIS 6.0(Windows Server 2003),C#3.0和Windows安装程序
P.S。对不起我的英文
答案 0 :(得分:4)
应用程序池注册有一点延迟。如果您打开网站,则会强制完成该操作。如果你没有,并在完成之前重置,那么它就消失了。
你打电话给iisreset /nowait
吗?这将导致它放弃该注册,仅调用iisreset
应该让它完成。
尝试iisreset /noforce
对此安全,它会等到IIS完成,如果它超时等待,将不会强行杀死任何东西。如果需要很长时间,请给它一个更高的超时,默认为60秒。您可以通过以下方式执行此操作:iisreset /noforce /timeout:300
为其提供5分钟的闲暇时间。