他のスレッドをチェックしましたが、機能していません。それらに続いて、私はこれまでこの方法を実装しました:
private void InjectAlertBlocker()
{
HtmlElement head = webBrowser4.Document.GetElementsByTagName("head")[0];
HtmlElement scriptEl = webBrowser4.Document.CreateElement("script");
IHTMLScriptElement element = (IHTMLScriptElement)scriptEl.DomElement;
string alertBlocker = "window.showModalDialog = function () { };";
alertBlocker += "window.alert = function () { };";
alertBlocker += "getUrlParam(strParamName){};";
alertBlocker += "getSpecialUrlsParam(strParamName) {};";
alertBlocker += "closeButton();";
element.text = alertBlocker;
head.AppendChild(scriptEl);
}
InjectAlertBlocker()は、ナビゲートされ完了したイベントから呼び出されます。
また、私は試しました:
private void webBrowser_NewWindow(object sender, CancelEventArgs e)
{
WebBrowser wb = sender as WebBrowser;
if (wb != null)
añadeTextoDebug("Un navegador quiso abrir un popup: " + wb.Url);
e.Cancel = true;
}
キャンセルしたいサイトのURLは次のようなものです:警告詐欺のようなリンク http://cdn.adbooth.net/src/autoshortner.html?section=3605070&url=url_i_want_goes_here.com