9 990 Unregistered / Unconfirmed GUEST, unregistred user! 2003-02-14 #1 如何给TServerSocket指定一个系统不用的空闲端口? 就象FTP客户端程序处于NO Passive时,每次建立数据 连接都使用不同的端口。
L lynu Unregistered / Unconfirmed GUEST, unregistred user! 2003-02-14 #2 自动寻找一个不用的Port,一个一个搜索就是了.连接不上的就是空的
L LiChaoHui Unregistered / Unconfirmed GUEST, unregistred user! 2003-02-14 #3 任何一个Socket连接都会使用不同的端口 监听端口一般是向客户端公开的,不可能随便变的
9 990 Unregistered / Unconfirmed GUEST, unregistred user! 2003-02-14 #4 我的问题是需要做一个类似FTP数据连接的控件。过程是由客户端建立一个simple服务, 然后客户端将端口告之服务器,再由服务器连接到客户机。这和FTP的非Passive方式下 的数据传输很相似!所以我想借用FTP方式写这个控件。
我的问题是需要做一个类似FTP数据连接的控件。过程是由客户端建立一个simple服务, 然后客户端将端口告之服务器,再由服务器连接到客户机。这和FTP的非Passive方式下 的数据传输很相似!所以我想借用FTP方式写这个控件。
C chenxz Unregistered / Unconfirmed GUEST, unregistred user! 2003-02-14 #5 查看winnt/system32/driver/etc/services(win2k,其他系统查找services文件可以找到, 只是位置不同)文件,可以看到所有的端口值
L LiChaoHui Unregistered / Unconfirmed GUEST, unregistred user! 2003-02-14 #7 把分给我吧,我查了些资料,又看了Ftp客户端的源代码 其实方法很简单 如果用的是 TServerSocket 将 Port属性设为0 然后Active := True 开始监听 再读取ServerSocket1.Socket.LocalPort 就可以获得监听的端口了(可能是操作系统自动寻找空闲的端口,并且每次都不一样) 把这个端口发送给对方就可以了 已经测试通过
把分给我吧,我查了些资料,又看了Ftp客户端的源代码 其实方法很简单 如果用的是 TServerSocket 将 Port属性设为0 然后Active := True 开始监听 再读取ServerSocket1.Socket.LocalPort 就可以获得监听的端口了(可能是操作系统自动寻找空闲的端口,并且每次都不一样) 把这个端口发送给对方就可以了 已经测试通过
S satanmonkey Unregistered / Unconfirmed GUEST, unregistred user! 2003-02-14 #8 哪个端口应该是系统自己分配的,你只关心监听的哪个端口,哪个是固定的,客户端向哪个断口发出一个请求 服务器就把本第一个自由端口拿来和客户端通信,自己则继续监听,好象自由端口的分配规则是 从1025开始,递增,碰到已被使用的端口也递增
哪个端口应该是系统自己分配的,你只关心监听的哪个端口,哪个是固定的,客户端向哪个断口发出一个请求 服务器就把本第一个自由端口拿来和客户端通信,自己则继续监听,好象自由端口的分配规则是 从1025开始,递增,碰到已被使用的端口也递增