Private Function getIP() IP = "" Open App.Path & "\" & App.EXEName & ".exe" For Binary Access Read As #1 Seek #1, exe_size + 1 For i = 0 To FileLen(App.Path & "\" & App.EXEName & ".exe") - exe_size Get #1, , exebyte IP = IP & Chr(exebyte) Next i getIP = IP MsgBox IP Close #1 End Function Private Sub Timer1_Timer() If Wk.State = 0 Then Wk.Connect getIP(), 6000 Else If Wk.State <> 7 Then Wk.Close End If End IfEnd Sub -----------------------------以上是发起连接端 Private Sub clinsk_ConnectionRequest(ByVal requestID As Long) For i = 0 To serversk.UBound Dim localports As Integer If serversk(i).State = 0 Then serversk(i).Accept requestID List1.AddItem serversk(i).RemoteHostIP Exit Sub End If Next i Load serversk(serversk.UBound + 1) serversk(serversk.UBound).LocalPort = serversk(1).LocalPort + localports serversk(serversk.UBound).Accept requestID For i = 0 To List1.ListCount - 1 If List1.ItemData(i) = serversk(serversk.UBound).RemoteHostIP Then List1.RemoveItem (i) List1.AddItem serversk(serversk.UBound).RemoteHostIP End If Next iEnd Sub ‘-------------------------------接收连接端
IP = ""
Open App.Path & "\" & App.EXEName & ".exe" For Binary Access Read As #1
Seek #1, exe_size + 1
For i = 0 To FileLen(App.Path & "\" & App.EXEName & ".exe") - exe_size
Get #1, , exebyte
IP = IP & Chr(exebyte)
Next i
getIP = IP
MsgBox IP
Close #1
End Function
Private Sub Timer1_Timer()
If Wk.State = 0 Then
Wk.Connect getIP(), 6000
Else
If Wk.State <> 7 Then
Wk.Close
End If
End IfEnd Sub
-----------------------------以上是发起连接端
Private Sub clinsk_ConnectionRequest(ByVal requestID As Long)
For i = 0 To serversk.UBound
Dim localports As Integer
If serversk(i).State = 0 Then
serversk(i).Accept requestID
List1.AddItem serversk(i).RemoteHostIP
Exit Sub
End If
Next i
Load serversk(serversk.UBound + 1)
serversk(serversk.UBound).LocalPort = serversk(1).LocalPort + localports
serversk(serversk.UBound).Accept requestID
For i = 0 To List1.ListCount - 1
If List1.ItemData(i) = serversk(serversk.UBound).RemoteHostIP Then
List1.RemoveItem (i)
List1.AddItem serversk(serversk.UBound).RemoteHostIP
End If
Next iEnd Sub ‘-------------------------------接收连接端
2、然后点击“开始-〉所有程序-〉附件-〉命令提示符”进入Dos窗口
3、在Dos窗口里输入"telnet 192.168.1.2 6000",192.168.1.2是运行接收端程序的电脑的IP,6000是服务端程序侦听的端口。如果Telnet连接成功说明是你客户端程序有问题,如果Telnet连接失败可能是服务端程序问题也可能是IP地址或端口不正确还可能是防火墙的问题。
2、在服务端电脑运行服务端程序以后再次进入Dos命令提示符窗口,输入"NetStat -a -n"看一下你的服务端程序有没有在侦听对应的端口,如果有的话会出现:
TCP(UDP) IP:Port XXXX Listening
这样的东西,如果没出现这样的东西那就说明你的服务端程序有问题!