2012-09-05 23 views
0

我知道如何將自己的腳本注入到加載事件的網頁中,但它並不總是按預期工作。有時候,頁面會成功在我之前運行自己的腳本,並且會導致整個應用程序失敗。我嘗試禁用頁面產生另一個瀏覽器窗口的可能性。我有一個應用程序在我的服務器上運行,當它隨機啓動Internet Explorer實例時 - 它很快崩潰了整個機器,這是一場災難。C#,WebBrowser,如何在頁面上的任何其他腳本之前注入並執行JavaScript?

我做了一個腳本,它改變了window.open方法,它完美地完成了這個技巧 - 除了當我的代碼執行之前頁面彈出另一個窗口的情況。有沒有辦法在完成注入腳本之前凍結JS?也許有一種方法可以在DocumentCompleted事件之前的一個早期點注入我的腳本?但是如何?

+1

參見[XY問題(http://www.perlmonks.org/?node_id=542341 - 你可以使用它的技術支撐該非常出色的小提琴手HTTP調試器做) –

+0

你如何注入腳本?顯示一些代碼。 –

回答

3

這並不直接回答你關於如何在瀏覽器中執行的問題 - 但我知道Avast互聯網安全所做的類似事情,它使用HTTP代理完成。

這個想法是攔截HTML頁面,因爲它們是通過線路接收的,並將腳本注入到HTML本身;因此任何其他腳本都無法在它之前執行。

雖然這聽起來嚇人 - 在FiddlerCore API

+0

所以我可以注入一些東西到加載HTML與FiddlerCore之前它會被WebBrowser接收?如果可能的話,這將是注入腳本的完美方式。 – Harry

+0

是的,你有它:) –

相關問題