2011-06-14 92 views
3

我正在使用SHDocVw.InternetExplorerClass刮擦網頁。它工作正常,在XP中,但是當我嘗試在Windows 7上運行它,我得到一個錯誤:當我運行在正常工作管理員模式下的Visual Studio在Windows 7中以管理員身份運行Visual Studio以與Internet Explorer交互

The interface is unknown. (Exception from HRESULT: 0x800706B5)

,但已發佈應用程序必須運行在管理員模式下,這也是不可接受的。

是否有任何方式避開在管理員模式下運行應用程序?

回答

2

你是否絕對需要使用SHDocVw.InternetExplorerClass進行刮擦?您可以使用System.Net.WebClientHttpWebRequest發送常規HTTP Web請求嗎?這些是首選的方法。如果您需要執行JavaScript或VBScript之類的腳本技術,通常應該只使用SHDocVw.InternetExplorerClass進行刮取。

+0

我很想避免使用它,但數據是在一個包含cookie和內容的登錄屏幕後面,到目前爲止,我還沒有找到一種直接訪問該頁面的方法,而無需編寫整個登錄過程的腳本。我們有另一個網頁,我們使用客戶端憑證登錄爲他們做一些事情。有50-60個用戶名/密碼要記住,所以我們有一個應用程序,打開IE瀏覽器,並輸入正確的用戶名/密碼,以便人們不必把它看在一個Excel文件或什麼東西。他們只需雙擊客戶端,應用程序就會記錄它們。 – AndyD273 2011-06-15 12:32:46

+0

對於用戶名和密碼,您只需通過POST將這些變量作爲變量發送(或者對於非常不安全的站點GET)即可。然後用一個webclient你只需要修改它來存儲cookie。這個網站上有很多樣本,告訴你如何做到這一點。 – 2011-06-15 14:16:49

+0

我已經玩過一些東西,但它是一個非常安全的網站,整個post/cookie的東西讓我難住。假設我的第二個例子是規範(遠程控制IE以避免從長列表中查找那些東西),我將如何避免必須以管理員身份運行?我喜歡Windows 7更安全,但是當這樣的事情出現時,這讓我很煩惱。我可能還會給'WebClient'另一面看,但它不會完全解決我的問題。 – AndyD273 2011-06-15 20:16:23

相關問題