我有一個應用程序,它會截取網頁並創建調整大小的圖像。該應用程序基本上加載了一個調用ActiveX的網頁,以使用IE資源加載網頁並截取屏幕截圖。這個應用程序已經在Windows Server 2003上運行了幾年,沒有任何問題。ActiveX無法屏幕捕獲託管在同一服務器上的頁面
但現在我已將服務器升級到Windows Server 2008,屏幕截圖操作已超時。從測試中,我可以看到它成功地截取了互聯網上託管的任何網頁的屏幕截圖...除了在同一臺服務器上託管的頁面之外。
每當它嘗試捕獲與應用程序在同一服務器上託管的網站上加載的頁面時,它就會超時。 ESC被禁用,似乎所有其他權限都可以使用,即:它適用於遠程頁面,但適用於主頁。
有什麼想法可以造成這種情況,以及如何解決它?
經過進一步測試,我已經縮小了與截取屏幕截圖的服務器在同一臺服務器上從MS-SQL數據庫記錄中彈出頁面導致失敗的原因。在遠程服務器上生成的相同頁面捕獲正常。我進一步確定,錯誤不是ACASystems DLL特有的,因爲它也會影響另一個用於從網頁創建MHT文件的DLL。該DLL(Chilkat.MHT)也使用IE來動態加載和組裝網頁,然後將其保存爲a.mht文件。
所以這個問題更多地涉及IE在運行ActiveX時從MS-SQL組裝網頁的問題。但要解決這個謎?
源代碼到ActiveX控件?沒有這個,我不明白這個問題怎麼可能得到回答。我無法想象我的頭腦會有什麼問題,但是有一種方法可以讓貓變好,而在編程中,通常有幾十種方法可以完成任何給定的任務。選擇哪種方式與IE交互,我無法猜測。 – Pete 2013-03-19 20:35:21
沒有源代碼可用,因爲它是http://www.acasystems.com使用的第三方插件。我已經在Win2003上成功使用了4年,而現在在Win2008上它失敗了。我做了一些測試,它在遠程服務器上捕獲頁面時起作用。在本地服務器上捕獲頁面時,它也可以工作。但是在從MS-SQL數據庫提取記錄的本地服務器上捕獲頁面時失敗。如果我能記得4年前我是如何解決這個問題的。 – WilliamK 2013-03-20 04:05:25