为什么我的VB WINSOCK连接收不到信息?

[复制链接]
查看11 | 回复1 | 2010-8-15 20:10:24 | 显示全部楼层 |阅读模式
服务代码:
Dim LJQPXX As String
Private Sub Form_Load()
WSK1.Listen
End Sub
Private Sub WSK1_ConnectionRequest(ByVal requestID As Long)
If WSK1.StatesckClosed Then WSK1.Close
WSK1.Accept requestID
End Sub
Private Sub WSK1_DataArrival(ByVal bytesTotal As Long)
WSK1.GetData LJQPXX
Debug.Print LJQPXX
If LJQPXX = "SQKZ" Then
If WSKZM.State0 Then
WSK1.SendData "FWQFM"
Else
WSK1.SendData "FWQJS"
End If
End If
WSK1.Close
WSK1.Listen
End Sub
客户端代码:
Dim LJQPXX As String
Private Sub Command1_Click()
If Command1.Caption = "申请连接" Then
If WSK1.State7 Then '判断WSK1状态
WSK1.Close
WSK1.Connect
End If
End If
If Command1.Caption = "申请控制" Then
WSK1.SendData "SQKZ"
End If
End Sub
Private Sub WSK1_Connect()
MsgBox "连接服务:" & WSK1.RemoteHostIP & "成功"
Command1.Caption = "申请控制"
End Sub
Private Sub WSK1_ConnectionRequest(ByVal requestID As Long)
If WSK1.StatesckClosed Then WSK1.Close
WSK1.Accept requestID
End Sub
Private Sub WSK1_DataArrival(ByVal bytesTotal As Long)
WSK1.GetData LJQPXX
Debug.Print LJQPXX
If LJQPXX = "FWQFM" Then
MsgBox "服务器繁忙,请稍连接"
End If
If LJQPXX = "FWQJS" Then
MsgBox "服务器已接受您的连接请求"
End If
End Sub
发送信息服务器可以收到.客户端收不到服务器会的信息

回复

使用道具 举报

千问 | 2010-8-15 20:10:24 | 显示全部楼层
Senddata函数后面要加doevents,必须使用一个Doevents才能把每一个winsock的信息发送出去, 如果去掉Doevents,就不能保证每一个winsock都能发送出去信息.你可以试试
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行