加载中…
个人资料
悦妃云
悦妃云
  • 博客等级:
  • 博客积分:0
  • 博客访问:142,750
  • 关注人气:27
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

VB局域网广播获取服务器IP地址

(2013-06-15 08:20:33)
标签:

局域网

广播

获取

服务器

ip地址

it

分类: 开发源码
VB使用Winsock进行UDP广播通信,自动取得服务器IP
实现原理:客户端向局域网广播本机(客户端)IP,服务器收到广播消息,提取到客户端IP,向其发送本机(服务器)IP

服务器代码:
Private Sub Form_Load()
Me.Caption = "Servicer"
Me.Height = 0
Me.Width = 2000
Winsock1.Protocol = sckUDPProtocol
Winsock1.RemotePort = 6000
Winsock1.LocalPort = 6001
Winsock1.Bind
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim StrData As String
Winsock1.GetData StrData
If Left(StrData, 14) = "/GetServicerIP" Then
    Debug.Print Mid(StrData, 16)
    Winsock1.RemoteHost = Mid(StrData, 16)
    Winsock1.SendData "/ServicerIP:" & Winsock1.LocalIP
End If
End Sub

客户端代码:
Private Sub Form_Load()
Me.Caption = "Client"
Me.Height = 0
Me.Width = 2000
Winsock1.RemoteHost = "255.255.255.255"
Winsock1.Protocol = sckUDPProtocol
Winsock1.RemotePort = 6001
Winsock1.LocalPort = 6000
Winsock1.Bind
Winsock1.SendData "/GetServicerIP:" & Winsock1.LocalIP
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim StrData As String
Winsock1.GetData StrData
If Left(StrData, 11) = "/ServicerIP" Then
    Debug.Print Mid(StrData, 13)
    GetIP = True
    MsgBox "服务器IP:" & Mid(StrData, 13)
End If
End Sub

0

阅读 评论 收藏 禁止转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有