P
programhunter
Unregistered / Unconfirmed
GUEST, unregistred user!
我的不知道为什么无法正常调用.
WSAIoctl(MainListen,SIO_GET_EXTENSION_FUNCTION_POINTER,@GuidAcceptEx,sizeof(GuidAcceptEx),
AcceptEx,sizeof(TAcceptEx),@BytesReturned,nil,nil);
AcceptEx^(MainListen,SocketBlock^.CurSocket,@lpOutputBuf,0,
sizeof(Addr) + 16,sizeof(Addr) + 16,BytesReceived,poverlapped(@CurOVERLAPPED));
谁能帮助我简单介绍一下AeccpEX工作流程,我现在对AcceptEx的工作流程不是很清楚,所以有些问题无法解决.这方面的资料又很少.
我主要想知道当AccepEx放出10个Socket后,什么时候知道用户连接过来,对应的是哪一个Socket,请帮助说明一下.
TAcceptEx = function (sListenSocket, sAcceptSocket: TSocket;
lpOutputBuffer: Pointer; dwReceiveDataLength, dwLocalAddressLength,
dwRemoteAddressLength: DWORD; var lpdwBytesReceived: DWORD;
lpOverlapped: POverlapped): BOOL; stdcall;
PAcceptEx = ^TAcceptEx;
WSAIoctl(MainListen,SIO_GET_EXTENSION_FUNCTION_POINTER,@GuidAcceptEx,sizeof(GuidAcceptEx),
AcceptEx,sizeof(TAcceptEx),@BytesReturned,nil,nil);
AcceptEx^(MainListen,SocketBlock^.CurSocket,@lpOutputBuf,0,
sizeof(Addr) + 16,sizeof(Addr) + 16,BytesReceived,poverlapped(@CurOVERLAPPED));
谁能帮助我简单介绍一下AeccpEX工作流程,我现在对AcceptEx的工作流程不是很清楚,所以有些问题无法解决.这方面的资料又很少.
我主要想知道当AccepEx放出10个Socket后,什么时候知道用户连接过来,对应的是哪一个Socket,请帮助说明一下.
TAcceptEx = function (sListenSocket, sAcceptSocket: TSocket;
lpOutputBuffer: Pointer; dwReceiveDataLength, dwLocalAddressLength,
dwRemoteAddressLength: DWORD; var lpdwBytesReceived: DWORD;
lpOverlapped: POverlapped): BOOL; stdcall;
PAcceptEx = ^TAcceptEx;