现在想做一个客户端跟服务器端进行数据交互的功能,而且传送的数据量比较大(差不多4K左右),请问怎样实现?本想用Winsock控件中SendData方法发送数据,但好像不能!谁有这方面的资料给份给我参考一下!
解决方案 »
- exit for用法
- VB如何用长整数表示日期
- 求助 关于连接数据库的问题~~~
- 关于将数据库中的数据写入txt文本文件的问题
- 打包安装时出错!在线等待!!谢谢!!!
- 断刀客 进
- 怎么在VB中实现动画???
- 快捷字母下加下划线
- 求教:用VB客户端连接SQL2000时,错误提示 服务器名\Guest 登陆失败,为什么???
- 用Writeprivateprofilestring建立的关键字,怎么删除,比方现有[STAT]STAT1=1;STAT2=2;现想把STAT2=2;去掉怎么做,对会的人一定很简单,
- 求个VB的程序,检测插入的是U盘还是鼠标?
- CommonDialog控件 不可用 提示类没有注册 怎么办?
SendData方法发送数据是没有问题,查看你的程序。参考资料看MSDN中的:
1)使用 Winsock 控件
2)Winsock 控件
--------------------------------------------------------------------------
另一种方法是安装ms sql server或Oracle等可以直接远程连接的数据库,然后直接连接数据库进行数据交互。
可以 不过再接收的时候要进行判断'给你个代码段吧 先传送长度(这里是gDataLenght),再确认长度传送成功后,发送数据包,知道完全接收完毕
mvarwskClient.GetData bGetData, vbByte
If SafeArrayGetDim(gGetData) <> 0 Then
If UBound(gGetData) = 0 And gGetData(0) = 0 Then
gGetData = bGetData
Else
lngLast = UBound(gGetData) '上次已经接收到的数据总长度
lngNow = UBound(bGetData) '本次取得的数据长度
ReDim Preserve gGetData(lngLast + lngNow + 1)
For i = 0 To lngNow
gGetData(lngLast + i + 1) = bGetData(i)
Next i
End If
Else
gGetData = bGetData
End If
If UBound(gGetData) >= gDataLenght Then
mvarDataType = gDATA_OF_COMMAND
gRecordSet = StrConv(gGetData, vbUnicode)
ReDim gGetData(0)
Erase gGetData
Else
Exit Sub
End If