请教VB高手一个winsock的问题

来源:百度知道 编辑:UC知道 时间:2024/06/05 02:56:52
程序1:
Private Sub Form_Load()
With udpPeerA
.RemoteHost = "202.113.8.61"
.RemotePort = 1010
.LocalPort = 1011 '
.Bind 1011
End With
End Sub
Private Sub Command1_Click()
udpPeerA.SendData txtSend.Text '发送文本
End Sub
程序2:
Private Sub Form_Load()
With udpPeerB
.RemoteHost = "202.113.8.61"
.RemotePort = 1011
.LocalPort = 1010
.Bind 1010
End With
End Sub
Private Sub Command2_Click()
Dim strData As String
udpPeerA.GetData strData, vbString
txtOutput.Text = strData
End Sub

我在程序1里进行发送,想在程序2里接收,收到后放到txtoutput.text里,结果收到的都是空。之前我用txtSend_Change()y和udpPeerA_DataArrival(ByVal bytesTotal As Long)这样都能收到,请问我想一个程序点发送,然后另一个程序点接收,这样怎么收不到呢?

udpPeerA_DataArrival(ByVal bytesTotal As Long)是接收关键,好久不弄VB了,现在没有IDE环境,应该是先立连接,还有不要不IP写死,放在文本框中,端口尽量用2000以上的,小点的系统要用。

下面是Winsock控件的相关属性,方法和事件。(略去一些暂用不到的)

*属性
-------------------------------------------------------------------------
LocalHostName | 本地机器名
LocalIP | 本地机器IP地址
LocalPort | 本地机器通信程序的端口(0<端口<65536)
RemoteHost | 远程机器名
RemotePort | 远程机器的通信程序端口
state | 连接的当前状态(文后有详细说明)
Protocal | 使用TCP或UDP协议(这里我们选‘0-sckTCPProtocal’)
--------------------------------------------------------------------------
*方法
--------------------------------------------------------------------------
Listen
Listen方法用于服务器程序,等待客户访问。
格式:Winsock对象.listen
Connect
Connect方法用于向远程主机发出连接请求
格式:Winsock对象.connect [远程主机IP,远程端口]
Accept
Accept方法用于接受一个连接请求
格式:Winsock对象.accept Request ID
Senddata
此方法用于发送数据
格式:Winsock对象.senddata 数据
Getdata
用来取得接收到的数据