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
H : THandle;
size, r : longInt;
buf : pointer;
begin
H := FileOpen(nome_file_da_inviare, fmOpenread);
size := FileSeek(H, 0, fsfromEnd);
buf := getmem(size);
FileSeek(H, 0, fsfromBeginning);
r := FileRead(H, buf^, size);
FileClose(H);
... ok, una 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