[fpc-devel] rtl/win/winsock2.pp

Martin lazarus at mfriebe.de
Sat Sep 15 02:19:05 CEST 2012


The unit contains 3 declarations (just picking one example, may be 
similar for other functions)

function WSASocketA( af, iType, protocol : Longint; lpProtocolInfo : 
LPWSAProtocol_InfoA; g : GROUP; dwFlags : DWORD ): TSocket; stdcall; 
external WINSOCK2_DLL name 'WSASocketA';
function WSASocketW( af, iType, protocol : Longint; lpProtocolInfo : 
LPWSAProtocol_InfoW; g : GROUP; dwFlags : DWORD ): TSocket; stdcall; 
external WINSOCK2_DLL name 'WSASocketW';
function WSASocket( af, iType, protocol : Longint; lpProtocolInfo : 
LPWSAProtocol_Info; g : GROUP; dwFlags : DWORD ): TSocket; stdcall; 
external WINSOCK2_DLL name 'WSASocket';

Does the last one work. It gives an error on my vista 32 bit ("dll entry 
point not found")

My understanding is that windows offers the A and W versions, and the 
none-postfix version is just an in application alias to one of them?
Or is there a win version, where the dll actually exports 'WSASocket' ? 
(And if so, shouldn't it be IFDEF and mapped to A or W for other win 
versions?



More information about the fpc-devel mailing list