您的位置:首页 > 编程语言 > VB

使用VB实现邮箱自动注册(二):修改代理服务器

2012-02-21 17:48 495 查看
如果一个IP在一段时间过多的注册,则该IP会被封调,一个办法就是修改注册表以修改代理服务器。在这里我使用一个API函数internetsetoption,使用之前要添加一个模块,然后加入如下代码:

Public Const internet_option_proxy = 38

Public Const INTERNET_OPEN_TYPE_PROXY = 3

Public Const INTERNET_OPTION_SETTINGS_CHANGED = 39

Type INTERNET_PROXY_INFO

dwAccessType As Long

lpszProxy As String

lpszProxyBypass As String

End Type

Public Declare Function internetsetoption Lib "wininet.dll" _

Alias "InternetSetOptionA" _

(ByVal hinternet As Long, _

ByVal dwoption As Long, _

ByRef lpbuffer As Any, _

ByVal dwbufferlength As Long) As Long

改代码定义了三个常数和一个结构,该API函数的具体用法请大家查询MSDN。VB修改注册表的办法就太多了,我就不多说了。在WebBrowser1_DocumentComplete事件中在添加一个条件语句,用以判断是否是IP被封的提示页面,代码如下:

If InStr(doc.body.innerText, "IP地址在这一段时间内已经注册了太多的用户") > 0 Then

Dim options As INTERNET_PROXY_INFO

options.dwAccessType = INTERNET_OPEN_TYPE_PROXY

options.lpszProxy = "168.10.46.77:80"

options.lpszProxyBypass = ""

internetsetoption 0, internet_option_proxy, options, LenB(options)

Dim don As Double

Dim doff As Double

Set reg = CreateObject("Wscript.Shell")

a = reg.regwrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyServer", _

"211.144.96.250:80")

a = reg.regwrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyEnable", _

1)

internetsetoption 0, INTERNET_OPTION_SETTINGS_CHANGED, 0, 0

WebBrowser1.Navigate "http://freemail.eyou.com/signup.html?bgp=%CE%D2%BD%D3%CA%DC&bgp_enable=on"

End If

至此代理服务器的修改也完成了。

对于一些有验证码的网站如何识别出图片上的验证码,我还没有办法解决,我试着用VC写了一个图片识别程序,但效果很不理想,希望大家多交流。

!亲!亲!亲!亲:您可能也喜欢:

VB自动登陆网络站点详解(二):Inet控件与WebBrowser控件配合使用

巧用VB.net2005编写网络搜索工具

使用VB实现邮箱自动注册(一):表单自动提交

VB调用webbrowser技巧集2

修改注册表优化加速windows系统开关机(2)

如何在VB中使用超文本连接

VB自动登陆网络站点详解(四):在WebBrowser中发送POST请求

获取webbrowser控件网页的源码

详解windows中自启动程序的藏身之处

桌面不显示IE的解决方法

VB Webbrowser控件详解

WebBrowser应用

vb调用Webbrowser技巧集3

利用IE控件访问Internet
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐