说明:当服务器电脑每交开机时,程序自动运行,并生成一批处理文件,查出本机本次开机上网后所分配新的IP地址信息,并保存在一个TXT文件里,然后自动将这个文件发送到各客户端操作员邮箱,客户端操作员打开客户端程序并填上新的IP地址,点按钮就可以连接上远方的SQL数据库,也就可操作这个数据库了.
服务器端程序代码
Private Sub Form_Load()
'下面是开机自动运行
Set w = CreateObject("wscript.shell")
w.regwrite "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\" & App.EXEName, _
App.Path & "\" & App.EXEName & ".exe" '写入注册表
'下面是连接数据库
Adodc1.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=XXSJ;Data Source=.\mysql" '本机服务器名
Adodc1.RecordSource = "系统用户"
Set DataGrid1.DataSource = Adodc1
'下面是建立批处理文件
Open "D:\自动检测自己的IP.bat" For Output As #1 '这个程序所在的文件夹下Open AppPath & "\自动检测自己的IP.bat" For Output As #1
Print #1, "ipconfig /all >>D:\IP.txt"
Close #1
'下面是运行批处理文件
Shell "D:/自动检测自己的IP.bat"
'发送指定路经下的文件到指定邮箱
On Error Resume Next '容错语句
NameSpace = "http://schemas.
Set Email = CreateObject("CDO.Message")
Email.From = "发件邮箱" '发信人地址
Email.To = "收件邮箱" '收信人地址
Email.Subject = "服务器IP" '邮件主题
Email.AddAttachment "D:\IP.txt" '这是需发送的附件
With Email.Configuration.Fields
.Item(NameSpace & "sendusing") = 2
.Item(NameSpace & "smtpserver") = "smtp. '这是邮箱的服务器地址
.Item(NameSpace & "smtpserverport") = 25
.Item(NameSpace & "smtpauthenticate") = 1
.Item(NameSpace & "sendusername") = "发信人用户名" '发信人用户名
.Item(NameSpace & "sendpassword") = "发件箱密码" '发件箱密码
.Update
End With
Email.Send
Set Email = Nothing
'MsgBox "发送成功!"
End Sub
客户端程序代码
Private Sub Command2_Click()
If Text1.Text = "" Then
MsgBox "IP地址不能为空,请填上!", 16, "提示!"
Exit Sub
End If
Adodc1.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=XXSJ;Data Source=" & Text1 & "" '远程服务器电脑上的IP地址
Adodc1.RecordSource = "系统用户"
Set DataGrid1.DataSource = Adodc1
End Sub
[
本帖最后由 曙光电子 于 2014-2-1 19:15 编辑 ]