vb的WebBrowser控件怎样避免浏览器脚本错误?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vb的WebBrowser控件怎样避免浏览器脚本错误?相关的知识,希望对你有一定的参考价值。

用vb的WebBrowser控件打开一个网页,经常出现脚本错误(如图)。而直接在浏览器中输入网址不会有错误。怎样避免用WebBrowser控件打开网页时弹出的脚本错误提示呢?
要通过vb编程代码实现

启动IE,执行“工具→Internet选项”菜单,选择“高级”选项卡,选中“禁止脚本调试”复选框,最后单击“确定”按钮即可。追问

要通过vb编程代码实现

追答

Private Sub Command1_Click()
'首先引用Registry Access Functions
Dim mREG As New REGTool5.Registry
Dim ret As Boolean
ret = mREG.UpdateKey(HKEY_CURRENT_USER, "Software\Microsoft\Internet Explorer\Main ", "Disable Script Debugger ", "yes ")
ret = mREG.UpdateKey(HKEY_CURRENT_USER, "Software\Microsoft\Internet Explorer\Main ", "DisableScriptDebuggerIE ", "yes ")
End Sub

追问

如有时间能讲解下吗?

追答

就是修改注册表HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main下的
"Disable Script Debugger "为 "yes "
"DisableScriptDebuggerIE "为 "yes"
相当于我一开始说的选中“禁止脚本调试”复选框

追问

这样修改注册表会被360等软件查出吗?

追答

你试下吧,我没装360

参考技术A 窗体里加入下面代码即可:

Private Sub WebBrowser1_DownloadBegin()
WebBrowser1.Silent = True
End Sub
Private Sub WebBrowser1_DownloadComplete()
WebBrowser1.Silent = True
End Sub追问

如有时间能讲解下原理吗?

追答

Silent是WebBrowser控件的一个属性,用于屏蔽网页错误弹出对话框。上面代码就是在网页开始加载和加载结束的过程中屏蔽页面的错误对话框。

追问

1.需要不需要把Private Sub WebBrowser1_DownloadBegin()改成:Private Sub WebBrowser1_DocumentBegin(ByVal pDisp As Object, url As Variant)

2.需要不需要把Private Sub WebBrowser1_DownloadComplete()改成:Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, url As Variant)

追答

不需要的,按我写的那样就可以,我自己也在用。

追问

因为我的程序中已经有了Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, url As Variant)的代码,我把你代码中WebBrowser1.Silent = True这一行直接加入Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, url As Variant)和End Sub 之间不行吗?

追答

那过程名不一样的哦,我那个是WebBrowser1_DownloadComplete,你的是WebBrowser1_DocumentComplete。

本回答被提问者采纳
参考技术B IE设置或网页本身有错

以上是关于vb的WebBrowser控件怎样避免浏览器脚本错误?的主要内容,如果未能解决你的问题,请参考以下文章

VB使用webbrowser控件时怎样释放内存?我使用了许多webbrowser数组时,只见占用内存越来越大。最后崩溃

VB模拟鼠标点击webbrowser控件网页

VB中如何将WebBrowser打开的网页图片缩放显示?

如何解决VB中WebBrowser控件持续打开网页占用的内存

VB.NET WebBrowser 控件 OnClick 事件未触发

模拟链接点击webbrowser控件vb.net