我正在使用瀏覽器的圖像生成工作,但這樣做是爲了從窗體中的代碼中獲取瀏覽器的快照。但是,如果瀏覽器未在特定時間加載(假設15秒),則會發生空白快照。任何人都可以幫助我。如何知道當前瀏覽器是否加載了C#代碼
回答
我不完全確定我是否完全理解你正在嘗試做什麼,但是我會採取一些措施:聽起來好像你試圖打開任何程序設置爲用戶的默認網頁瀏覽器,然後做一些像BitBlt
這樣的截圖。
但是,正如您所注意到的,僅等待預定義的時間間隔並且希望瀏覽器完全加載很困難。相反,運行該進程後,您可以嘗試類似WaitForIdleInput
之類的操作,這將暫停該線程的執行,直到該進程完成初始化並處於空閒狀態(等待用戶輸入)。這應該允許瀏覽器完成加載,然後繼續拍攝快照。
類似下面的代碼:
//start the web browser
System.Diagnostics.Process proc = System.Diagnostics.Process.Start("iexplore.exe");
//wait for it to completely finish loading
proc.WaitForInputIdle();
//take your screenshot, or whatever
//...
雅先生,它不工作,因爲他們立即開始處理過程中的理想狀態! – bynx 2010-11-22 05:36:24
您可以嘗試指定等待的時間(以毫秒爲單位):'proc.WaitForInputIdle(3000);' – 2010-11-22 05:41:12
不,情況並非如此。實際上,在我的項目(webfonts.com)中,我創建了一個Windows應用程序,它將打開瀏覽器並輸入URL並拍攝快照,但我需要知道特定瀏覽器中的頁面(如Firefox,Opera等)是加載或不加載,以便拍攝快照。即使互聯網速度太慢,我的應用程序應該在瀏覽器頁面加載後拍攝快照,但是我的代碼無法知道頁面被加載的天氣,因爲它是一個Windows應用程序,在這種情況下該怎麼做?????? – bynx 2010-11-22 10:25:28
- 1. 如何知道瀏覽器是否真的完成了瀏覽
- 2. 瀏覽器如何知道腳本是否完成加載?
- 3. 如何知道gecko瀏覽器是否完成加載網頁?
- 4. 瀏覽器是否加載了一整塊JavaScript代碼在執行之前?
- 5. 瀏覽器如何知道當前的AD用戶ASP.NET
- 6. 如何知道網站如何確定瀏覽器是否啓用了JS?
- 7. 如何使用php代碼知道瀏覽器
- 8. 你如何知道Node.js代碼將在瀏覽器上運行?
- 9. 如何知道客戶端的瀏覽器是否啓用了firebug?
- 10. 如何知道瀏覽器是否具有AJAX(Django)
- 11. 瀏覽器如何知道網站是否支持HTTP/2?
- 12. 如何知道瀏覽器是否打開?
- 13. 如何讓頁面知道瀏覽器是否已登錄?
- 14. 我如何知道我的瀏覽器是否支持SVG 2.0?
- 15. WPF - 如何知道瀏覽器是否加載了帶有/沒有錯誤的網頁?
- 16. 如何知道mapView是否被加載?
- 17. 如何知道是否爲當前WIFI網絡設置了密碼?
- 18. scipy.weave.inline命令如何知道代碼是否先前編譯過?
- 19. 如何知道是否加載了NIB文件?
- 20. 瀏覽器如何知道scss文件?
- 21. 如何知道scipy函數是否使用C代碼?
- 22. 從C#中瀏覽器加載頁面獲取源代碼
- 23. 如何知道NSWindow是否是前窗?
- 24. 如何知道php文件是從源代碼加載
- 25. java代碼 - 如何檢測瀏覽器是否打開
- 26. C++代碼瀏覽
- 27. 是否可以從當前瀏覽器打開另一個Web瀏覽器
- 28. 是否可以在javascript中添加瀏覽器代碼
- 29. 如何知道瀏覽器何時完成加載後處理圖像?
- 30. 如何檢測瀏覽器是否正在加載
你的意思是說,你有一個winform內一個瀏覽器的元素,希望當它完成加載頁知道嗎? – Alxandr 2010-11-21 11:54:26
沒有瀏覽器不是在winform中,但我的winform應用程序打開瀏覽器n瀏覽頁面n在任何瀏覽器中拍攝頁面的快照bt我的應用程序無法知道該頁面是否加載或不! – bynx 2010-11-22 10:35:29