mi è costato un mal di testa, devo inviare un file pdf con protocollo http da una procedura scritta in free pascal ed uso questa funzione
Codice PHP:
var
  
THandle;
  
sizer  longInt;
  
buf pointer;
begin

     H 
:= FileOpen(nome_file_da_inviarefmOpenread);

     
size := FileSeek(H0fsfromEnd);

     
buf := getmem(size);

     
FileSeek(H0fsfromBeginning);

     
:= FileRead(Hbuf^, size);

     
FileClose(H);

... 
okuna volta che lo ho in un buffer lo spedisco tal quale dopo l'header

     freemem(buf);
end; 
adesso funziona.

il problema è che scrivevo

r := FileRead(H, buf, size);
e non dereferenziavo buf.
La dichiarazione di FileRead è
http://www.freepascal.org/docs-html/.../fileread.html

Non riesco a capire perchè sbagliavo, nella mia testa FileRead accetta un Pointer.

grazie a chi me lo spiega
ciao
sergio