L
lvqher
Unregistered / Unconfirmed
GUEST, unregistred user!
客户的局域网里有网管软件,它会通过采样的方法去检测数据包,它要求客户机从指定的端口中发出数据,
对于TCPIP客户端来说基本上不需要通过bind()的方法去指定自己的发送端口,但是客户却要求这样!在DEPHI
里,TCustomWinSocket在构造函数里面已经把FAddr.sin_port := 0 了,在为0的情况下,只能是系统自动选择
自己的发送端口,这个该如何解决呢?难道要修改DEPHI的 这个构造函数不成了?还望专家指教!
constructor TCustomWinSocket.Create(ASocket: TSocket);
begin
inherited Create;
Startup;
FSocketLock := TCriticalSection.Create;
FASyncStyles := [asRead, asWrite, asConnect, asClose];
FSocket := ASocket;
FAddr.sin_family := PF_INET;
FAddr.sin_addr.s_addr := INADDR_ANY;
FAddr.sin_port := 0;
FConnected := FSocket <> INVALID_SOCKET;
end;