Originariamente inviato da CaMpIoN
Bene ho capito come fare, ma provando mi da un problema, e cioè che il programma si blocca
Innanzitutto dovresti essere più specifico e definire cosa intendi con "mi da un problema" oppure "il programma si blocca", descrivendo accuratamente ciò che avviene e come testi la tua libreria.

Ne approfitto per suggerire di utilizzare la libreria in Delphi con un progetto di prova, prima di impiegarla nel programma che ne deve fare uso.

In merito al codice che hai postato, non capisco perché l'oggetto TBitmap venga creato al di fuori della funzione implementata: sposta la sua creazione all'interno della funzione, garantendo la distruzione dell'istanza con il costrutto Try...Finally:

codice:
var
  Bmp: TBitmap;
begin
  Bmp := TBitmap.Create;
  try
    Bmp.LoadFromFile(...);
    Bmp.Canvas.FloodFill(...);
    Bmp.SaveToFile(...);
  finally
    Bmp.Free;
  end;
end;
Cosa più importante, non puoi usare il tipo string nella funzione, poiché quel tipo è specifico di Delphi: devi usare PChar (o PAnsiChar, a seconda di come lavora il programma chiamante, se lavori con una versione di Delphi recente che si basa su Unicode).

Ciao!