Thema: Delphi Datei Icons herausfinden

Einzelnen Beitrag anzeigen

Benutzerbild von gsh
gsh

Registriert seit: 24. Okt 2004
1.542 Beiträge
 
Delphi XE Architect
 
#10

Re: Datei Icons herausfinden

  Alt 1. Nov 2007, 20:13
Hi ich bins nochmal

ich benutze jetz folgende funktion:
Delphi-Quellcode:
function GetFileIcon(const FileName: string; const Icon: TIcon; const FileMustExist: Boolean): Boolean;
var
  FI: TSHFileInfo;
  Attributes: DWORD;
  Flags: Word;
begin
  if FileMustExist then
  begin
    Attributes := 0;
    Flags := SHGFI_ICON or SHGFI_LARGEICON;
  end
  else
  begin
    Attributes := FILE_ATTRIBUTE_NORMAL;
    Flags := SHGFI_USEFILEATTRIBUTES or SHGFI_ICON or SHGFI_LARGEICON;
  end;
  if SHGetFileInfo(PChar(FileName), Attributes, FI, SizeOf(FI), Flags) <> 0 then
  begin
    Icon.ReleaseHandle;
    Icon.Handle := FI.hIcon;
    Result := True;
  end
  else Result := False;
end;
So diese Funktion funktioniert schon ganz gut. Nur hab ich noch zwei Probleme damit.
Also wenn ich FileMustExist auf true setzte dann bekomme ich bei einer .Ink datei (verknüpfung) überhaupt keinen Icon.
Aber wenn ich FileMustExist auf false setzte dann bringt er bei einem Ordner kein richtiges Icon mehr.

Habt ihr eine Ahnung warum?
Alex
"Sage nicht alles, was du weißt, aber wisse alles, was du sagst!" Matthias Claudius
"Wer sich über Kritik ärgert, gibt zu, daß er sie verdient hat." Tacitus
  Mit Zitat antworten Zitat