A方程序代码(winsock控件的name改成了udpPeerA,text控件改成了TextSend和textoutput)
-----------------
Private Sub Form_Load()
With udpPeerA
.RemoteHost = "PeerB"
.RemotePort = 1010
.LocalPort = 1011
.Bind 1011
End With
frmPeerB.Show
End SubPrivate Sub Command1_Click()
udpPeerA.SendData TextSend.Text'这里提示参数错误
End SubPrivate Sub udpPeerA_DataArrival(ByVal bytesTotal As Long)
Dim strdata As String
udpPeerA.GetData strdata, vbString
TextOutput.Text = strdata
End Sub
----------------------------------
B方代码:
-------------------
Private Sub Form_Load()
With udpPeerB
.RemoteHost = "PeerA"
.RemotePort = 1011
.LocalPort = 1010
.Bind 1010
End With
End SubPrivate Sub command1_click()
udpPeerB.SendData TextSend.Text'这里提示参数错误
End SubPrivate Sub udpPeerB_DataArrival(ByVal bytesTotal As Long)
Dim strdata As String
udpPeerB.GetData strdata, vbString
TextOutput.Text = strdata
End Sub
-------------------
请高手指教这"参数"错在哪里?
-----------------
Private Sub Form_Load()
With udpPeerA
.RemoteHost = "PeerB"
.RemotePort = 1010
.LocalPort = 1011
.Bind 1011
End With
frmPeerB.Show
End SubPrivate Sub Command1_Click()
udpPeerA.SendData TextSend.Text'这里提示参数错误
End SubPrivate Sub udpPeerA_DataArrival(ByVal bytesTotal As Long)
Dim strdata As String
udpPeerA.GetData strdata, vbString
TextOutput.Text = strdata
End Sub
----------------------------------
B方代码:
-------------------
Private Sub Form_Load()
With udpPeerB
.RemoteHost = "PeerA"
.RemotePort = 1011
.LocalPort = 1010
.Bind 1010
End With
End SubPrivate Sub command1_click()
udpPeerB.SendData TextSend.Text'这里提示参数错误
End SubPrivate Sub udpPeerB_DataArrival(ByVal bytesTotal As Long)
Dim strdata As String
udpPeerB.GetData strdata, vbString
TextOutput.Text = strdata
End Sub
-------------------
请高手指教这"参数"错在哪里?
解决方案 »
- getbitmapbits函数 图象处理问题
- 一台机器,可是同时存在多个ado版本吗?如果不能同时存在,产生冲突如何解决?
- 高手帮忙看下如下代码,怎么能在拖动VScroll1时,mschart的显示能反映更快??
- [求助]各位老大,如何获得局域网内机器正在访问的本机文件名?
- 我很菜~~~如何得到MSHFlexGrid当前用户选定单元的数据或者是行号?在线等
- InternetOpen函数中的参数sAgent的意义?
- 请教treeview问题!
- 关于data report的小问题
- True DBGrid中可以用“TDBGrid1.Columns(Col).CellText(Row)”这种方法取得某个单元格的值,那么该怎样用类似的方法来设置某单元格的值呢?(也就是不改动BookMark的值)行吗?
- VB.net中,用Mail.MailMessage发邮件时如何添加附件
- 大家喜欢CSDN个人空间实名制么?
- 这个问题怎么解?
.RemoteHost = "PeerB"里面的"PeerB"指定了吗?
如果是本机测试,这里改成127.0.0.1
如下:
Private Sub Form_Load()
With Winsock1
.Protocol = sckUDPProtocol
.RemoteHost = "65.32.25.14"
.RemotePort = 55(另一端是56)
.LocalPort = 56(另一端是55)
.Bind 56(另一端是55)
End With
End Sub
如下:
Private Sub Form_Load()
With Winsock1
.Protocol = sckUDPProtocol
.RemoteHost = "65.32.25.14" '(这是对方的IP,别一端的程序指向的是我的IP)
.RemotePort = 55'(另一端是56)
.LocalPort = 56'(另一端是55)
.Bind 56'(另一端是55)
End With
End Sub
再后来发现不是代码的问题,而是宽带的问题
因为我用的是ADSL,为了图方便用猫拨号,每次开机就已经联网的那种
后来两边都改成用计算机拨号就OK了造成这种问题的原因是,用猫拨号,得到的公网IP是分配给猫(即路由器)的而不是分配给你这台计算机的
你的计算机只分配到一个内网IP,当猫收到那个UDP数据包的时候,
不知道该发给内网的哪台机了,就无效了个人经验,仅供参考
楼主不妨参考一下