【发布时间】:2017-02-14 08:21:07
【问题描述】:
我开发了一个使用microsoft.Office.Interop.Word 生成文档的应用程序。
我在这里遇到了一些问题。
文档生成过程不适用于 windows server 2012 R2。
经过长时间的互联网搜索后,它现在可以正常工作了。 但问题是,如果我的网站处于空闲模式大约 8 小时,然后如果我尝试执行相同的文档生成过程,它将无法正常工作。
但是,在 IIS 上重新启动我的应用程序池后,它又可以工作了。
有人知道发生了什么吗?
谢谢。
【问题讨论】:
-
我发现了互操作的东西,如果完成后你不确保所有项目现在都为空,即使垃圾收集器也不会恢复它们,你最终会得到许多在你的情况下打开的实例......一旦你有太多它可能会变得不稳定..即使应用程序结束,它们仍然存在 - 所以对于网络也是如此..
-
大概8小时后app pool被卸载,没有w3wp进程;那么你运行的用户没有登录,它不能运行你的代码。当然,任何异常信息都会有所帮助。
-
@zaitsman 我试图获取错误信息,但找不到任何单一的痕迹或线索。如果没有 w3wp 进程,那么它甚至不会运行该站点,但它可以完美地运行所有数据库功能,只有文档部分不起作用。
-
@BugFinder 你是对的,但在这种情况下,在重新启动应用程序池后它不应该工作,但不,在重新启动应用程序池后它再次完美运行,直到它在接下来的大约 8 小时内空闲。
-
当它脾气暴躁时,绝对没有错误吗?服务器上没有看起来不合适的进程?
标签: c# iis interop office-interop iis-8