查看: 36  |  回复: 0
  VB6 最全面简单的Winsock操作,一次给你讲清楚
楼主
发表于 2025年10月19日 00:07

新建Form1.frm,窗体记事本代码:

具体代码只能由VIP查看,请升级

Form1.frm逻辑代码部分:

具体代码只能由VIP查看,请升级

运行结果:

21:05:11 <Form_Load>-------------------------------------
21:05:11 显示原始未绑定WinsockS和WinsockC信息(相同)
21:05:11 LocalHostName=huawei
21:05:11 LocalIP=192.168.1.20
21:05:11 LocalPort=0
21:05:11 RemoteHost=
21:05:11 RemoteHostIP=
21:05:11 RemotePort=0

21:05:11 <cmdServerOn_Click>-------------------------------------
21:05:11 .Bind绑定了WinsockS (UDP) 192.168.1.20:88
21:05:11 LocalIP=192.168.1.20
21:05:11 LocalPort=88
21:05:11 RemoteHost=
21:05:11 RemoteHostIP=
21:05:11 RemotePort=0

21:05:11 <cmdSend_Click>-------------------------------------
21:05:11 显示WinsockC发送前信息
21:05:11 LocalHostName=huawei
21:05:11 LocalIP=192.168.1.20
21:05:11 LocalPort=77
21:05:11 RemoteHost=192.168.1.20
21:05:11 RemoteHostIP=
21:05:11 RemotePort=88
21:05:11 【证明】Winsock 设置只能使用 .RemoteHost(对方IP或域名),因为.RemoteHostIP 和 .LocalIP只读

21:05:11 [WinsockC cmdSend_Click]192.168.1.20:77 -> 发送用 RemoteHost=192.168.1.20:88 另外.RemoteHostIP=

21:05:11 <WinsockS_DataArrival>-------------------------------------
21:05:11 [WinsockS_DataArrival]192.168.1.20:88收到 RemoteHostIP=192.168.1.20:77 (1个字节) 另外.RemoteHost=
21:05:11 【证明】接收只能使用 .RemoteHostIP,因为不可能知道对方的域名。

21:05:11 显示WinsockS回复前信息
21:05:11 LocalHostName=huawei
21:05:11 LocalIP=192.168.1.20
21:05:11 LocalPort=88
21:05:11 RemoteHost=
21:05:11 RemoteHostIP=192.168.1.20
21:05:11 RemotePort=77

21:05:11 【证明】回复只能使用 .RemoteHostIP,因为不可能知道对方的域名。

21:05:11 <WinsockC_DataArrival>-------------------------------------
21:05:11 [WinsockC_DataArrival]192.168.1.20:77收到 RemoteHostIP=192.168.1.20:88 (1个字节) 另外.RemoteHost=
21:05:11 【证明】接收只能使用 .RemoteHostIP,因为不可能知道对方的域名。

结论:

发送要用 .RemoteHost(可以设置对方IP或域名)

接收要用 .RemoteHostIP(不可能知道对方的域名) ,接收后回复用只读的 .RemoteHostIP

您需要登录后才可以回帖 登录 | 立即注册
【本版规则】请勿发表违反国家法律的内容,否则会被冻结账号和删贴。
用户名: 立即注册
密码:
2020-2025 MaNongKu.com