经过测试.Winsock在局网状态下会掉包!
接收端代码如下(一个Winsock控件):
Option ExplicitPrivate Sub Form_Load()
Winsock1.LocalPort = 9550
Winsock1.Listen
End SubPrivate Sub Winsock1_Close()
Winsock1.Close
Winsock1.Listen
End SubPrivate Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
Winsock1.Close '关闭监视
Winsock1.Accept requestID '接受新连接ID
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) '新数据到达
Print bytesTotal
End Sub
发送端代码如下(一个Winsock控件,一个按钮做连接用):
Private Sub Command1_Click()
Winsock1.Connect
End SubPrivate Sub Winsock1_Connect()
Dim x As String
Dim y As Integer
For y = 1 To 4800
x = x & "1"
Next y
Winsock1.SendData x
End Sub经过测试,这段代码没问题..但是发送过程有问题.如果哪个大哥有空帮忙小弟请留下QQ!
接收端代码如下(一个Winsock控件):
Option ExplicitPrivate Sub Form_Load()
Winsock1.LocalPort = 9550
Winsock1.Listen
End SubPrivate Sub Winsock1_Close()
Winsock1.Close
Winsock1.Listen
End SubPrivate Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
Winsock1.Close '关闭监视
Winsock1.Accept requestID '接受新连接ID
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) '新数据到达
Print bytesTotal
End Sub
发送端代码如下(一个Winsock控件,一个按钮做连接用):
Private Sub Command1_Click()
Winsock1.Connect
End SubPrivate Sub Winsock1_Connect()
Dim x As String
Dim y As Integer
For y = 1 To 4800
x = x & "1"
Next y
Winsock1.SendData x
End Sub经过测试,这段代码没问题..但是发送过程有问题.如果哪个大哥有空帮忙小弟请留下QQ!
解决方案 »
- 我用WebBrowser自动登陆了一个网站,登陆成功了,但是点击某功能按键时,又提示我没有登陆,退到了登陆面页让我重新登陆。请问怎么办?
- 获取sql数据库事件
- 为什么用winsock采用udp协议时,连接一个不存在的IP,不会出错呢?
- 急急急急急急急急急急急,菜鸟求教,如何让LISTBOX或者DataGrid实现如下的效果,急急急急急急急急
- 有vb企业版的全部控件发给我哈。我的电脑装不上企业版,就装了一个精简版的。我想在用的时候自己添加
- 静态变量问题(在线求助)
- 哪个晓得么样调出打印机设置的窗口,感谢万分!
- 《新编Windows API》到底是怎么回事》??
- winsock的send方法能不能传送自定义的数据类型呀?
- VB 做ACCESS向EXCEL转换数据时挂起,为什么?
- datareport为什么总是提示“-2147217915(80040e05)对象已被打开”
- 实时错误 -2147417848(80010108) 对象Write_Date 的方法_WQIC4428失败
Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
Winsock1.Close '关闭监视
Winsock1.Accept requestID '接受新连接ID
End Sub
如果不先设置winsock为空闲状态就会出错...
建议LZ凡遇到问题须多动脑筋,仔细查找自己代码的BUG.
接收(一个WINSOCK):Option ExplicitPrivate Sub Form_Load()
Winsock1.LocalPort = 9550
Winsock1.Listen
End SubPrivate Sub Winsock1_Close()
Winsock1.Close
Winsock1.Listen
End SubPrivate Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
Winsock1.Close '关闭监视
Winsock1.Accept requestID '接受新连接ID
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) '新数据到达
Dim x As String
Print bytesTotal
Winsock1.GetData x
End Sub发送(一个WINSOCK 两个按钮):Option ExplicitDim x As String, y As IntegerPrivate Sub Command1_Click()
Winsock1.Connect
End SubPrivate Sub Command2_Click()
Winsock1.SendData x
End SubPrivate Sub Form_Load()
For y = 1 To 4800
x = x & "0"
Next y
Winsock1.RemoteHost = "192.168.1.200"
Winsock1.RemotePort = 9550
End Sub
-------------------------------------------------------------------
这样都不行吗?
x = x & "1"
Next y
Winsock1.SendData x x老长老长,肯定对出问题的,就像QQ传输一个2G以上的文件就会被禁止的