当前位置: 行情首页 >> 技术文章 >> 技术文章 >> SendData和GetData

  • SendData和GetData方法传送接收二进制字节数组的问题! VB / 基础类
  • 2007-10-18 15:40:32 杭州电脑数码城 转载来源:csdn.net
  • 社区 - VB / 基础类

    SendData和GetData方法传送接收二进制字节数组的问题!

    () 2000-02-01 18:45:00在 VB / 基础类 提问

    怎样用Winsock控件的SendData和GetData方法传送接收二进制字节数组.

    程序:
    发送部分
    Private Sub cmdSendData_Click()
    'SendArr为已附值的二进制字节数组
    For i = 1 To 65536
    sckServer.SendData SendArr(i-1)
    Next
    End Sub

    接收部分
    Private Sub sckClient_DataArrival(ByVal bytesTotal As Long)
    Dim ReceiveArr() As Byte
    For j=1 to 65536
    sckClient.GetData ReceiveArr()
    Next
    End Sub

    以上程序我调试后,出现的问题是:ReceiveArr()没有得到传送过来的数据.
    不知各位遇到过这种问题吗?
    问题点数:0、回复次数:5

    1楼 littletao () 回复于 2000-02-02 09:08:00 得分 0


    你试试不用for语句,直接。senddata Sendarr
    接受时用 .Getdata receivearr(),vbArray + vbByte?

    2楼 () 回复于 2000-02-02 10:08:00 得分 0


    谢谢littletao!

    我已经按照littletao的方法试过,将for语句去掉但接收到的还是0,
    但如果是:Senddata Sendarr(0)
    Getdata ReciveArr(),vbArray + vbByte
    只能接收到数组中的第一个数据,不知是何原因. 请指点(最好有详细例程)!

    3楼 Code () 回复于 2000-02-11 11:57:00 得分 0


    将GetData的for循环去掉。

    4楼 Firing_Sky (火的天空) 回复于 2000-02-11 16:21:00 得分 0


    Code说得对!

    5楼 zhangdr () 回复于 2000-03-17 13:01:00 得分 0


    他们已经将你的问题解决了,下面是我将他们的意思详细化的结果,这段代码我用过,应该不会有问题的。
    发送部分
    Private Sub cmdSendData_Click()
    'SendArr为已附值的二进制字节数组
    sckServer.SendData SendArr
    End Sub
    接收部分
    Private Sub sckClient_DataArrival(ByVal bytesTotal As Long)
    Dim ReceiveArr() As Byte
    redim ReceiveArr(bytesTotal-1)
    sckClient.GetData ReceiveArr,vbByte + vbArray
    End Sub

竟价广告:

    业界行情新闻声明事项:

    • ☉本网转载出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性!
    • ☉如其他媒体、网站或个人从本网下载使用,必须保留本网注明的“稿件来源”,并自负版权等法律责任。如对稿件内容有疑议,请及时与我们联系.
    • ☉如本网转载稿涉及版权等问题,请作者在速来电或来函与杭州电脑数码城网联系.
    • ☉本站网址:http://www.ititt.com/投诉邮箱:6371222@qq.com