我有一个应用程序可以截取网页并创建调整大小的图像。该应用程序基本上是加载一个网页,该网页调用一个 ActiveX 以使用 IE 资源加载网页并截取屏幕截图。这个应用程序已经在 Windows Server 2003 上运行了几年,没有出现任何问题。
但是现在我已经将服务器升级到 Windows Server 2008,屏幕截图操作超时。从测试中,我可以看到它成功地截取了 Internet 上托管的任何网页的屏幕截图……除了托管在同一服务器上的页面。
每当它尝试捕获与应用程序托管在同一服务器上的站点上加载的页面时,它就会超时。ESC 被禁用,似乎所有其他权限都可以,即:它适用于远程页面,但适用于主页。
关于什么可能导致这种情况以及如何解决它的任何想法?
在进一步测试之后,我缩小了失败的原因,因为页面是从与截屏相同的服务器上的 MS-SQL 数据库记录中填充的。在远程服务器上生成的相同页面捕获 ok。我进一步确定该错误并不是 ACASystems DLL 所特有的,因为它还会影响另一个用于从网页创建 MHT 文件的 DLL。此 DLL (Chilkat.MHT) 还使用 IE 即时加载和组装网页,然后将其保存为 .mht 文件。
所以这个问题更多地与 IE 在运行 ActiveX 时从 MS-SQL 组装网页有关。但是要解开这个谜团呢?