经验总结:WebBrowser自动点击弹出提示框alert、弹出对话框confirm、屏蔽弹出框、屏蔽弹出脚本错误的解决办法...

经验总结:WebBrowser自动点击弹出提示框alert、弹出对话框confirm、屏蔽弹出框、屏蔽弹出脚本错误的解决办法

网上有好多解决方法,可是不一定好使,本人经过多次试验,针对WebBrowser控件中自动点击弹出框及禁用脚本提示问题得到如下几种实际情况的解决办法,绝对管用。

1、屏蔽弹出错误脚本

WebBrowser控件ScriptErrorsSuppressed设置为True即可。 (参考本篇博客:http://www.cnblogs.com/qqflying/archive/2012/07/25/2607881.html

2、页面一加载就有弹出框的自动点击(屏蔽)

复制代码
private void webBrowser1_Navigated(object sender, WebBrowserNavigatedEventArgs e)       {           //自动点击弹出确认或弹出提示           IHTMLDocument2 vDocument = (IHTMLDocument2)webBrowser1.Document.DomDocument;           vDocument.parentWindow.execScript("function confirm(str){return true;} ", "javascript"); //弹出确认           vDocument.parentWindow.execScript("function alert(str){return true;} ", "javaScript");//弹出提示       }
复制代码

3、WebBrowser页面加载完毕之后,在页面中进行一些自动化操作的时候弹出框的自动点击(屏蔽)

复制代码
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)         {             //自动点击弹出确认或弹出提示             IHTMLDocument2 vDocument = (IHTMLDocument2)webBrowser1.Document.DomDocument;             vDocument.parentWindow.execScript("function confirm(str){return true;} ", "javascript"); //弹出确认             vDocument.parentWindow.execScript("function alert(str){return true;} ", "javaScript");//弹出提示 //下面是你的执行操作代码 }
复制代码

 

注意:一定要放到你的代码执行前面,这样有弹出框的时候才会自动点击,如果把这段代码放到你点击按钮之后,点击按钮弹出的提示框是自动点击不了的。放到前面即可实现点击按钮之后自动点击对话框提示的效果。

另外注意引用 using mshtml;命名控件。

在项目里,添加引用,找到 NET下的 Microsoft.mshtml,确定
再在程序页面上面加入using mshtml; 就可以了     
 

转载于:https://www.cnblogs.com/qqhfeng/p/4194938.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值