//服务器端代码
Private Sub Form_Load()
sockserver.RemoteHost = "192.168.0.254"
sockserver.LocalPort = 8888 'キホヒソレコナ,ラ鋓テエレ1000
sockserver.Listen 'ソェハシユ・
End Sub
Private Sub Form_Unload(Cancel As Integer)
sockserver.Close
End Sub
Private Sub SockServer_Close()
sockserver.Close
End Sub
Private Sub SockServer_ConnectionRequest(ByVal requestID As Long)
sockserver.Close
sockserver.Accept requestID 'ア桄セソヘサァヌ・ャスモオトIDコナ
End Sub
'オアソヘサァマホ「ヒヘハセンオスエ・・, イ揵ⅴataArrivalハツシ, ヤレハツシヨミスモハユハセン, GetDataキスキィスモハユハセン?
Private Sub SockServer_DataArrival(ByVal bytesTotal As Long)
Dim s As String
sockserver.GetData s
Text1.Text = s
End Sub
'オアホメミ靨ェマヘサァキ「ヒヘハセンハア」ャヨサミ襍テSendDataキスキィ。」
Private Sub Command1_Click()
sockserver.SendData Text2.Text
End Sub
//客户端代码Private Sub Form_Load()
' ヨクカィキホ愑・
'SockCL.RemoteHost = "162.105.37.72"
SockCL.RemoteHost = "192.168.0.254"
' ヨクカィキホヒソレテ・
SockCL.RemotePort = 8888
' チャスモオスキホ・
SockCL.Connect
End SubPrivate Sub SockCl_DataArrival(ByVal bytesTotal As Long)
Dim DataStr As String
' スモハユハセンオスホトアセソミ
SockCL.GetData DataStr
Text2.Text = DataStr
End Sub' マホ「ヒヘハセン
Private Sub Command1_Click()
SockCL.SendData Text1.Text
End Sub' ヘヒウフミ・
Private Sub Command2_Click()
SockCL.Close
End
End Sub
问题只能有一个用户访问可以〉〉〉多余一个时就不调用
SockServer_DataArrival()函数了〉〉〉〉???
Private Sub Form_Load()
sockserver.RemoteHost = "192.168.0.254"
sockserver.LocalPort = 8888 'キホヒソレコナ,ラ鋓テエレ1000
sockserver.Listen 'ソェハシユ・
End Sub
Private Sub Form_Unload(Cancel As Integer)
sockserver.Close
End Sub
Private Sub SockServer_Close()
sockserver.Close
End Sub
Private Sub SockServer_ConnectionRequest(ByVal requestID As Long)
sockserver.Close
sockserver.Accept requestID 'ア桄セソヘサァヌ・ャスモオトIDコナ
End Sub
'オアソヘサァマホ「ヒヘハセンオスエ・・, イ揵ⅴataArrivalハツシ, ヤレハツシヨミスモハユハセン, GetDataキスキィスモハユハセン?
Private Sub SockServer_DataArrival(ByVal bytesTotal As Long)
Dim s As String
sockserver.GetData s
Text1.Text = s
End Sub
'オアホメミ靨ェマヘサァキ「ヒヘハセンハア」ャヨサミ襍テSendDataキスキィ。」
Private Sub Command1_Click()
sockserver.SendData Text2.Text
End Sub
//客户端代码Private Sub Form_Load()
' ヨクカィキホ愑・
'SockCL.RemoteHost = "162.105.37.72"
SockCL.RemoteHost = "192.168.0.254"
' ヨクカィキホヒソレテ・
SockCL.RemotePort = 8888
' チャスモオスキホ・
SockCL.Connect
End SubPrivate Sub SockCl_DataArrival(ByVal bytesTotal As Long)
Dim DataStr As String
' スモハユハセンオスホトアセソミ
SockCL.GetData DataStr
Text2.Text = DataStr
End Sub' マホ「ヒヘハセン
Private Sub Command1_Click()
SockCL.SendData Text1.Text
End Sub' ヘヒウフミ・
Private Sub Command2_Click()
SockCL.Close
End
End Sub
问题只能有一个用户访问可以〉〉〉多余一个时就不调用
SockServer_DataArrival()函数了〉〉〉〉???
Private Sub Form_Load()
sockserver.RemoteHost = "192.168.0.254"
sockserver.LocalPort = 8888
End Sub
Private Sub Form_Unload(Cancel As Integer)
sockserver.Close
End Sub
Private Sub SockServer_Close()
sockserver.Close
End Sub
Private Sub SockServer_ConnectionRequest(ByVal requestID As Long)
sockserver.Close
sockserver.Accept requestID
End Sub Private Sub SockServer_DataArrival(ByVal bytesTotal As Long)
Dim s As String
sockserver.GetData s
Text1.Text = s
End Sub Private Sub Command1_Click()
sockserver.SendData Text2.Text
End Sub
//客户端代码Private Sub Form_Load() 'SockCL.RemoteHost = "162.105.37.72"
SockCL.RemoteHost = "192.168.0.254" SockCL.RemotePort = 8888 SockCL.Connect
End SubPrivate Sub SockCl_DataArrival(ByVal bytesTotal As Long)
Dim DataStr As String
SockCL.GetData DataStr
Text2.Text = DataStr
End Sub
Private Sub Command1_Click()
SockCL.SendData Text1.Text
End Sub
Private Sub Command2_Click()
SockCL.Close
End
End Sub
针对这个例子。。你能详细说明一下吗??我是一个vb初学者!!好多地方不懂。。您能给些提示代码马????????谢谢!!!!!!!!!!!1
wsknew.LocalPort = 1116
wsknew.Accept requestID
wsknew_Connect
每次接到请求,用一个新的Socket Accept 数量不定的时候用控件数组来实现。
winsock1(0)是在设计时候表单上的控件
Private Sub Winsock1_ConnectionRequest(Index As Integer, ByVal requestID As Long)
Dim sid As String
Dim i As Integer
If Winsock1.Count > 1 Then
sid = Winsock1(Index).RemoteHostIP
For i = 1 To Winsock1.Count - 1
If Winsock1(i).RemoteHostIP = sid Then
Winsock1(i).Tag = 0
Winsock1(i).Accept requestID
Exit Sub
End If
Next
Else
i = 1
End If
Load Winsock1(i)
Winsock1(i).Tag = 0
Winsock1(i).Accept requestID
End Sub
怎么实现非局域网的远程c/s连接的???
好象不行啊,连接n个客户端就用n个winsock啊
如private withevents winsockArray() as winsock.如此定义VB会报告错误的!你们怎么解决的?要知道如果不定义定义控件数组的事件,你怎么接受数据呢?