如果在分部,或者多个办公地点的内网服务器IP不同的情况下,希望后期方便修改数据源IP,并且以在第一次找到数据源IP后进行记录的方法
Dim ipFile As String = ProjectPath & "ip.txt"
Dim ips As String = FileSys.ReadAllText(ipFile)
Dim GETIP As String = Registry.GetValue("HKEY_CURRENT_USER\Software\MyApp","IP","") ‘-----------------获取注册表ip
If e.Name = "内网数据源名" Then
If getip <>"" AndAlso Network.Ping(getip,1000) = True Then ‘------------如果PING通,就直接连接了,ping不通的时候才会尝试其他IP,这样在分部比较多的情况下速度应该会更快些。
e.ConnectionString = e.ConnectionString.Replace("172.16.10.240",getip)
Return
End If
For Each ip As String In ips.Split("|") ’----------记事本里面的ip 用“|”分割 如:172.16.10.240|10.41.70.151
If Network.Ping(ip,1000) = True Then
Registry.SetValue("HKEY_CURRENT_USER\Software\MyApp","IP",IP) ‘-----------------如果找到写入注册表,方便下次直接调用
Return
End If
Next
End If