Google 不到答案,IdUDPClient控件,想Server 发送UDP包的时候,如何指定本地端口?(50分)

  • 主题发起人 主题发起人 ihweb
  • 开始时间 开始时间
I

ihweb

Unregistered / Unconfirmed
GUEST, unregistred user!
不是PeerPort ,是LocalPort
谢谢了。
 
UDP没有Server的概念!只有发送和接收!
Indy没用过,Winsock用过!
WinSock 和 c的socket库差不多!
发送UDP时,SendTo函数中由sockaddr_in记录指定port!
 
Indy 中的IdUDPClient.Port 是指对方的PORT,对方接收到信息,并且也知道UDPClient 发包来自的Port
我是就想指定IdUDPClient 的本地PORT
10.1.1.1:3000 -----> 10.1.1.2:4000
我的意思是这样。3000口对4000口,IdUDPClient 好象无法绑定。[:(]
 
Indy的本地端口好像是随机分配的
 
看了就是觉得Indy 的UDPClient端口随机分配,想固定他.
 
你试试先bind在sendto看会不会走bind的端口
 
const
Server_Port = 4000;
Client_Port = 3000;
UDPClient.DefaultPort:= Client_Port;
不知道可行不行,我看别人这么写的,我现在也在看网络这部分,以前没接触过,不知能不能介绍些资料看看,非常感谢,我邮箱xueyi_gang@126.com
 
我用过,UDPClient好像不能指定本地端口,它每次发送随机调用端口。如果你想固定端口的话可以使用UDPServer。比较方便。即可发送也可接受,可以绑定端口。我就是这样用的
 
用求知学人办法。
 
上面有人提到的DefaultPort可以
 
后退
顶部