我们可以通过Internet对VB软件进行注册或加密,在实际使用时,仅需更改程序段开始部分的变量部分即可。
在控件中选择Microsoft Internet Transfer Control 6.0,单击确定。双击工具箱中新出现的Inet图标,在启动窗体中加入Internet Transfer控件Inet1 。如果你是电话拨号上网,请使用该控件的缺省属性;如果在Intranet上,可能需要提供代理服务器才能连接到Internet上,特别是有防火墙的Intranet,需将AccessType属性设置为icNamedProxy(2),再加入代码Inet1.Proxy="myProxyName"。
Private Sub Form_Load()
Dim lo As Variant
Dim text As String
Dim p1 As Long
Dim p2 As Long
Dim p As String
Dim iCnt As Integer
Dim website As String
Dim tmpPwd As String
'只需更改下面的密码提示字段和网络地址
iCnt = 4 '密码长度
tmpPwd = "Password:" '密码提示字段
Open ("c:\password.txt") For Output As #1 '建立文本文件放置HTML文档
Write #1, Inet1.OpenURL(website)
'调用OpenURL方法返回指定的HTML文档,在打开的文件里写入该文档的源代码,
'如果检测到未与网络连接则自动弹出拨号连接窗口,连接后程序才继续运行。
Close #1
Open "c:\password.txt" For Binary As #2
'打开文件准备查找关键字
lo = LOF(2) '获取password.txt的大小
text = String(lo, " ") '设定text的长度
Get #2, 1, text '将整个文件读入字符串变量
p1 = InStr(1, text, tmpPwd)
'查找关键字password在文件中的位置
If p1 = 0 Then MsgBox "该文件未存放密码": End
'找不到关键字则函数返回0值
p2 = p1 + Len(tmpPwd) '计算密码的位置
p = Mid(text, p2, iCnt)
'取出4位数的密码,注意p2须定义为Long
Close #2
Kill ("c:\password.txt")
'密码已取出,删除临时文件
a = InputBox("请输入密码")
If a <> p Then MsgBox "密码错误": End
End Sub
说明:利用本方法会在启动本段代码的时候有一定时间的延迟用于下载网页源码,请选择网络良好的网站保存密码。并注意密码提示字段的唯一性!
VbInternetPwd:123456
阅读(2622) | 评论(0) | 转发(0) |