Hey,
ich habe folgende
API gehookt (mal wieder
):
Function Hook_WSARecv( fSocket: TSocket; flpBuffers: lpWSABuf; fdwBufferCount: DWORD; Var flpNumberOfBytesRecvd: DWORD; Var lpFlags: DWORD; flpOverlapped: lpWSAOverlapped; flpCompletionRoutine: lpWSAOverlapped_Completion_Routine ): Integer; StdCall;
Das funktioniert auch wunderbar. Das Problem ist etwas eigentlich recht Banales .. wie erhalte ich die empfangenen Daten in einem string?
Wenn ich die Funktion richtig verstanden habe wird sie mehrmals aufgerufen, auch wenn nur ein Datenpaket übertragen wurde. Die Anzahl der Aufrufe stehen dann in fdwBufferCount? Das ist jetzt mal so mehr oder weniger geraten ..