簡體   English   中英

C#,WebBrowser,如何在頁面上的其他任何腳本之前注入並執行JavaScript?

[英]C#, WebBrowser, how to inject and execute JavaScript before any other script on the page?

我知道如何在加載事件時將自己的腳本注入到網頁中,但是它並不總是能按預期工作。 有時,該頁面可以在我的頁面之前成功運行自己的腳本,這會使我的整個應用程序失敗。 我嘗試禁用該頁面生成另一個瀏覽器窗口的可能性。 我有一個運行在我服務器上的應用程序,當它隨機啟動Internet Explorer實例時-它將很快使整個計算機崩潰,這是一場災難。

我制作了一個腳本,該腳本可以更改window.open方法,並且可以完美地完成操作-除了在執行代碼之前頁面彈出另一個窗口的情況之外。 在完成注入腳本之前,是否可以凍結JS? 也許有一種方法可以在DocumentCompleted事件之前的較早時間注入我的腳本? 但是如何?

這並不能直接回答您有關如何在瀏覽器中執行此操作的問題-但我知道Avast Internet Security可以執行類似的操作,並且它使用HTTP代理來完成。

這個想法是攔截通過網頁接收到的HTML頁面,然后將腳本注入HTML本身。 因此,其他任何腳本都無法在其之前執行。

盡管這聽起來很可怕-但您可以使用支持非常出色的Fiddler HTTP調試器的技術-FiddlerCore API來做到這一點

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM