En realidad
ecfisa tiene razón pues la declaración de las APIs que hace Microsoft son para C. El caso es que delphi hace alguna "trampilla sintáctica" y la declaración, para que te funcione con los mismos tipos de parámetros es la siguiente:
Código Delphi
[-]
type
TReadFile = function(hFile: Cardinal; var Buffer; nNumberOfBytesToRead: Cardinal; var NumberOfBytesRead: Cardinal; lpOverlapped: POverLapped): LongBool; stdcall;
Saludos.