CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  网络编程

如何使用 WebBrowser 控件 浏览网页时屏蔽弹出的网页对话框!注意,不是弹出窗口,是网页对话框!

楼主pjchuqi(初奇 ASP001.net)2005-06-14 15:11:59 在 VB / 网络编程 提问

如题  
  弹出窗口一般是由window.open产生,这个可以解决,  
  但网页对话框是由showModalDialog产生,实在想不通怎么解决,望高手指点! 问题点数:100、回复次数:15Top

1 楼supergreenbean(超级绿豆(MSMVP - VB) - 升级归来~)回复于 2005-06-14 16:17:22 得分 60

这样就可以了  
   
  Private   Sub   WebBrowser1_NavigateComplete2(ByVal   pDisp   As   Object,   URL   As   Variant)  
          Dim   obj   As   HTMLDocument  
          Set   obj   =   pDisp.Document  
          obj.parentWindow.execScript   "function   showModalDialog(){return;}"  
  End   SubTop

2 楼sunnywq2004(fiona)回复于 2005-06-15 09:03:49 得分 5

关注,顺便问问,对于用window.confirm弹出的窗口怎么跳过Top

3 楼of123()回复于 2005-06-15 09:32:51 得分 10

这里有个问题,如果对话框的提问是“是否将此页作为默认网页”或“是否下载某某程序”,岂不是照单全收?Top

4 楼of123()回复于 2005-06-15 09:35:04 得分 0

是否可以考虑用   FindWindow   和   SendMessage   API   来处理?Top

5 楼supergreenbean(超级绿豆(MSMVP - VB) - 升级归来~)回复于 2005-06-15 09:57:46 得分 0

使用函数重载的方法其实就跟API拦截差不多的道理,可以写个和原函数有一样参数列表的函数,这样就可以知道判断是否是我们需要拦截的函数,以及决定是否调用原函数  
   
  confirm函数也可以象上面那样弄的,只要把函数名改成confirm就可以了Top

6 楼xghim((︵-︵))回复于 2005-06-15 11:05:36 得分 5

在WebBrowse_DownloadBegin()  
  和  
  WebBrowse_DownloadComplete()  
  中加入  
  WebBrowse.Silent   =   True  
  这样试验一下啊,或许可以.  
  在设计那里更改成true无效,每次都自动换成false了.Top

7 楼sunnywq2004(fiona)回复于 2005-06-15 14:42:09 得分 0

Dim   obj   As   HTMLDocument  
  编译-用户类型未定义Top

8 楼supergreenbean(超级绿豆(MSMVP - VB) - 升级归来~)回复于 2005-06-16 08:44:10 得分 0

引用Microsoft   HTML   Object   LibraryTop

9 楼pjchuqi(初奇 ASP001.net)回复于 2005-06-16 16:43:43 得分 0

to   supergreenbean(超级绿豆   -   要准备发芽了)  
  谢谢你的办法,我先试一下  
  另外是否有办法能把   of123()   所述的问题很好的屏弊?Top

10 楼pjchuqi(初奇 ASP001.net)回复于 2005-06-16 16:44:38 得分 0

to   xghim(小飞)  
  你的方法是禁止显示脚本错误信息的,对这个没用Top

11 楼pjchuqi(初奇 ASP001.net)回复于 2005-06-20 20:06:50 得分 0

?Top

12 楼hhjjhjhj(大头)(http://office.9zp.com)回复于 2005-06-20 20:56:08 得分 0

对网页的html进行处理后再让它运行。  
   
  With   Me.WebBrowser1  
  .Navigate   "about:blank"  
  .Document.DesignMode   =   "on"                 '设计模式,不会运行script  
  .Document.Location   =   "http://www.abc.com/xx.html"  
    MsgBox   "请等待网页加载完毕"  
   
  .Document.write   Replace(.Document.documentElement.outerHTML,   "some   words",   "")  
  .Document.DesignMode   =   "off"  
  End   With  
   
  Top

13 楼pjchuqi(初奇 ASP001.net)回复于 2005-06-22 21:43:35 得分 0

to   hhjjhjhj(大头)(想变胡萝卜^^)    
  如果不运行script的话,会影响到页面其它的正常脚本的运行啊  
   
  高手,还有没有更好的办法Top

14 楼hhjjhjhj(大头)(http://office.9zp.com)回复于 2005-06-23 17:59:46 得分 0

.Document.DesignMode   =   "on"                 '设计模式  
   
  设计模式  
  设计模式  
  设计模式  
  Top

15 楼cxianfa(含笑)回复于 2005-06-23 18:58:46 得分 20

Private   Declare   Function   ShellExecute   Lib   "shell32.dll"   Alias   "ShellExecuteA"   (ByVal   hwnd   As   Long,   ByVal   lpOperation   As   String,   ByVal   lpFile   As   String,   ByVal   lpParameters   As   String,   ByVal   lpDirectory   As   String,   ByVal   nShowCmd   As   Long)   As   Long  
   
   
    ShellExecute   frmDisplay.hwnd,   vbNullString,   "http://www.sina.com",   vbNullString,   vbNullString,   SW_SHOWNORMALTop

相关问题

  • 使用webbrowser控件时,如何屏蔽网站弹出的对话框?
  • 在对话框里嵌入webbrowser控件,如何屏蔽flash广告等弹出窗口,只显示网页?
  • 怎样屏蔽win98启动时弹出的所有对话框
  • 弹出对话框
  • 对话框弹出
  • 弹出对话框
  • ........弹出对话框
  • 如何把提示Socket连接错误的弹出对话框给屏蔽掉?
  • 谁知道如何用javascript屏蔽ALT+F4(不弹出任何对话框)
  • webbrowser 向javascript的 confirm弹出对话框发送取消

关键词

  • 网页
  • 函数
  • 设计模式
  • document
  • 对话框
  • 弹出
  • webbrowser
  • designmode
  • vbnullstring
  • byval

得分解答快速导航

  • 帖主:pjchuqi
  • supergreenbean
  • sunnywq2004
  • of123
  • xghim
  • cxianfa

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo