Aşağıdaki kodları Delphi’de derlediğimde sorun yok. Ancak Lazarus ile derlediğimde veri eksik okunuyor. Synapse library kullanan arkadaşlar yardımcı olabilir mi?
Aşağıdaki fonksiyonda kullanılan öntanımlamalar ve prototipler şöyle:
Kod: Tümünü seç
Tmemory=Pointer
-
TRecv = function(s: TSocket; var Buf; len, flags: Integer): Integer;stdcall;
-
ssRecv: TRecv = nil;
-
function Recv(s: TSocket; Buf: TMemory; len, flags: Integer): Integer;
begin
Result := ssRecv(s, Buf^, len, flags);
end;
function TCPSocket_RecvBuffer(socket: tSocket; buffer:TMemory;length:integer; out last_error: Integer):integer;
begin
Result := synsock.Recv(Socket, Buffer, Length, 0);
if Result<0 then last_error:=WSAGetLastError
else if Result=0 then last_error:=WSAENOTCONN
else last_error:=0;
end;
Yardımlarınız için şimdiden teşekkürler.