Add to uses list
uses
ImageHlp;
ImageHlp;
The main function is
function SearchForFile(const ARootPath: string;const AFileName: string): string;
var
Found: array[0..500] of ansiChar;
begin
FillChar(Found, SizeOf(Found), #00);
SearchTreeForFile(PansiChar(ARootPath), PansiChar(AFileName), Found);
if length(ExtractFilePath(Found))>0 then
result:=ExtractFilePath(Found)
else
result:='-1';
end;
var
Found: array[0..500] of ansiChar;
begin
FillChar(Found, SizeOf(Found), #00);
SearchTreeForFile(PansiChar(ARootPath), PansiChar(AFileName), Found);
if length(ExtractFilePath(Found))>0 then
result:=ExtractFilePath(Found)
else
result:='-1';
end;
Function usage:
SearchForFile(folder,filename);
To make it work in delphi versions older than 2009 just replace pansichar with pchar, and ansichar with char.

