function GetIcon(FileName: PChar; Directory: Boolean): TIcon; var //You need a variable of type "_SHFILEINFOA" : FileInfo: _SHFILEINFOA; Attrib: DWord; Flags: Cardinal; begin Flags:=SHGFI_ICON; If Directory then Attrib:=FILE_ATTRIBUTE_DIRECTORY else Attrib:=0; SHGetFileInfo(FileName, Attrib, FileInfo, SizeOf(FileInfo), Flags); Result:=TIcon.Create; Result.Handle:=FileInfo.hIcon; end; exemple :
var filename : string; Image1 : timage; Image2 : timage;
begin Filename:='c:\toto\monfichier.xls'; image2.Picture.Icon:=geticon(pchar(Filename), false); Filename:='C:\documents and Settings\Propriétaire\Mes documents\'; image1.Picture.Icon:=geticon(pchar(Filename), true); end;