源代码呢没有怎么帮你判断?

解决方案 »

  1.   

    源代码如下:
    发送方:
    Dim InBuf() as Byte
    Private Sub Form_Load()
    ...
    m_Wsk1.listen
    ...Private Sub m_Wsk1_ConnectionRequest(ByVal requestID As Long)
    If m_Wsk1.State <> sckClosed Then m_Wsk1.Close
    m_Wsk1.Accept requestID
    End SubPrivate Sub m_Wsk1_DataArrival(ByVal bytesTotal As Long)
    ...(这里还有发送文本数据的代码)
    Open FName For Binary As #1
    ReDim InBuf(LOF(1)) As Byte
    Get 1, 1, InBuf
    Close 1
    m_Wsk1.SendData Asc("B")
    For k = 1 To UBound(InBuf)
        m_Wsk1.SendData CByte(InBuf(k))
    Next k
    m_Wsk1.SendData Asc("E") & Asc("N") & Asc("D")
    ...
    接收方:
    Private Sub Form_Load()
    Wsk1.RemoteHost = "ServeName"
    Wsk1.RemotePort = 10
    Wsk1.Connect
    End SubPrivate Sub Wsk1_Connect()
    Wsk1.SendData ("(启动发送命令,略)")
    End SubPrivate Sub Wsk1_DataArrival(ByVal bytesTotal As Long)
    Dim Buf() As Byte
    Wsk1.GetData Buf
    i = 0
    ...
    Do While i < bytesTotal
        recvT = ""
        Flag = Buf(i)
        i = i + 2
        recvEND = False
        Select Case Flag
            Case 84:    'T的ASCII值
        ...(文本接收)
            Case 66:    'B的ASCII值
                ReDim Preserve recvB(bytesTotal - i + 1)
                j = i
                Do While Not recvEND
                    EndStr = ""
                    recvB(i - j) = Buf(i)
                    If i < (bytesTotal - 6) Then
                        EndStr = Chr((Buf(i + 1) - 48) * 10 + Buf(i + 2) - 48) + _
                        Chr((Buf(i + 3) - 48) * 10 + Buf(i + 4) - 48) + _
                        Chr((Buf(i + 5) - 48) * 10 + Buf(i + 6) - 48)
                    End If
                    If EndStr = "END" Then
                        recvEND = True
                        i = i + 6
                    Else: recvEND = False
                    End If
                    i = i + 1
                    If i = bytesTotal And Not recvEND Then
                        recvEND = True
                    End If
                Loop
        End Select
    Loop
    End Sub