- 浏览: 14095 次
最新评论
webbrowser模拟确定窗口对话框
2009年10月11日
webbrowser模拟确定窗口对话框
http://tieba.baidu.com/f?z=123003996&ct=335544320&lm=0&sc=0&rn=30&tn=baiduPostBrowser&word=vb&pn=30
某些网页出于各种考虑会弹出对话框要求信息确认,往往会中断我们的webbrowser过程,可以使用如下方法:
1.加入Microsoft Html Object
2.加入语句
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;}" '对showModalDialog引起的对话框进行确定
End Sub
而confirm引发的对话确定框可用confirm替换showModalDialog即可,Alert等同理~另一种方法在CSDN看到的方法,过个记录(未尝试)
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_SHOWNORMAL
____________________________________________________________________
我使用间隔n秒后发送sendkey"{enter}"能实现,但是这样太垃圾了
有什么直接控制的方法吗?
这个问题我已经研究清楚了,使用findwindow,findwindowex,sendmessage,再加time实现了
下面是代码,大家共享
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Private Const BM_CLICK = &HF5
Private Sub Timer2_Timer()
pk = FindWindow(vbNullString, 对话框名) '查找窗体,就是警告对话筐
pp = FindWindowEx(pk, ByVal 0&, "Button", 按钮名) ' 查找指定窗题上的指定button
SendMessage pp, BM_CLICK, 0, 0 '给button发送按下消息
End Sub
Private Sub WebBrowser1_NewWindow2(ppDisp As Object, Cancel As Boolean)
Cancel = True
End Sub
哪有那么麻烦:
Private Sub WebBrowser1_NavigateComplete2(ByVal pDisp As Object, URL As Variant)
Dim oDoc1 As HTMLDocument
Set oDoc1 = pDisp.Document
oDoc1.parentWindow.execScript "function alert(){return;}"
oDoc1.parentWindow.execScript "function confirm(){return;}"
oDoc1.parentWindow.execScript "function showModalDialog(){return;}"
End Sub
晕.那么多答案没一个有用的.我遇到过.LZ把这两个事件加进去就行了
Private Sub WebBrowser1_DownloadBegin()
WebBrowser1.Silent = True
End Sub
Private Sub WebBrowser1_DownloadComplete()
WebBrowser1.Silent = True
End Sub
发表评论
-
评论 (
2012-01-20 12:03 554评论 ( 2011年10月04日 初中英语教学予中考 ... -
安师大附中2012届高三第一
2012-01-20 12:03 747安师大附中2012届高三第 ... -
2012届高三语文每日一练
2012-01-20 12:03 11082012届高三语文每日一练 ... -
Button图片按钮
2012-01-19 16:53 798Button图片按钮 2011年11 ... -
VB中实现系统托盘图标实例
2012-01-19 16:53 1085VB中实现系统托盘图标实例 2011年04月19日 新建 ... -
SubClassWindow,SubClassDlgItem
2012-01-19 16:53 779SubClassWindow,SubClassDlgItem ... -
钩子程序解释说明都要注意小心钩子哦
2012-01-19 16:53 381钩子程序解释说明都要 ... -
windows消息机制
2012-01-19 16:53 511windows消息机制 2011年04月21日 一 W ... -
Do it
2012-01-17 06:36 571Do it 2011年12月10日 网站开发工程师 申请 ... -
汽车英语词汇 (2012了 大家抓紧学习)
2012-01-17 06:36 670汽车英语词汇 (2012了 大家抓紧学习) 2012年0 ... -
win7电脑配置
2012-01-17 06:36 965win7电脑配置 2011年12月30日 ------- ... -
AS3 编程易犯盲点――绝对对您有帮助,新手们都来看看吧
2012-01-17 06:35 645AS3 编程易犯盲点――绝对对您有帮助,新手们都来看看吧 2 ... -
使用 WebBrowser 控件如何防止某些网页强行最大化
2012-01-16 05:18 684使用 WebBrowser 控件如何防止某些网页强行最大化 ... -
使用Webbrowser的一点心得体会
2012-01-16 05:18 978使用Webbrowser的一点心得体会 2009年06月29 ... -
WebBrowser控件使用详解
2012-01-16 05:18 649WebBrowser控件使用详解 2010年09月29日 ... -
WebBrowser控件使用代理服务器(vb.net)
2012-01-16 05:18 1748WebBrowser控件使用代理服务器(vb.net) 20 ...
相关推荐
WebBrowser关闭弹出的alert对话框
webbrowser浏览器模拟点击 vb源码
webbrowser模拟点击按钮 ,找了很久才找到的非常经典的源码,绝对能帮你成就经典程序
Tab、WebBrowser、对话框间控制示例,动态调整控件位置,适合初学者。
本资源是针对C#winform开发的webBrowser控件进行的操作,webBrowser网页控件在实际应用中默认点击里面的链接是跳转到浏览器打开,该资源正是解决此问题,只在winform里打开。
输入想要点击的网页URL、自定义X轴、Y轴坐标、进行鼠标WebBrowser模拟点击、连击次数均可自定义(代码所属一朋友:星辰)
C# 嵌入Excel 用Webbrowser打开Office时不提示打开、保存对话框 ,用上面这个VB小程序 ,修改一下注册表就可以了
利用WebBrowser模拟操作进行模拟操作 这是一个c++内web实现模拟登陆,还有获取web事件,以及c++与js的交互。 http://blog.csdn.net/nanjun520/article/details/53024503
c#webbrowser实现多个窗口独立不同的cookie
VB6.0 WebBrowser阻止弹出窗口的3个办法
vb6_Webbrowser控件使用...2、弹出Webbrowser消息窗口 Dim oWindow Set oWindow = WebBrowser1.Document.parentWindow oWindow.confirm "abcd" VB调用webbrowser技巧集2 向Webbrowser中写入HTML内容的几种方法
Delphi禁止WebBrowser弹出IE的对话框
系统对话框不能自定义提示信息格式。改为自定义一个对话框,通过html格式化提示信息,生成文件,再通过webbrowser控件加载html文件,借助html灵活的自定义信息显示格式
自动点击WebBrowser,ie等弹出的alert确定,
使用WebBrowser控件时,在打开https安全链接时,可能会弹出"安全警报"(Security Alert)窗口让用户确认.用户只有点击"是(&Y)"才能正常打开网页.这是多余操作.解决方法:定时监视是否有窗口弹出,如果有,获取窗口句柄,再...
从工具箱中,将Webbrowser控件拖入Form窗口。 在Webbrowser控件的属性对话框中,将Url属性设置为对应的网址 然后在form窗体中双击webbrowser控件,在默认的webBrowser_DocumentCompleted函数中添加如下代码...
用webbrowser写的聊天对话框。脱离richtextbox的各种束缚。实现了QQ等聊天框的基本功能。包括鼠标右键的复制粘贴,全选删除等。字体的加粗颜色变化等功能。支持GIF图片的复制粘贴。其中可通过FORM代码中zhuaqu()...
主要介绍了C#实现的三种模拟自动登录和提交POST信息的方法,分别列举了WebBrowser、WebClient及HttpWebRequest实现自动登录及提交POST的相关实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下
1,在项目中引用程序集拓展中的Microsoft.mshtml后,可以在公共控件中找到WebBrowser控件。 2,在窗体中加入三个按钮,然后添加WebBrowser控件,右键控件选属性,设置相应的属性。 3,设置WebBrowser控件的属性 ...