Einzelnen Beitrag anzeigen

Benutzerbild von FriFra
FriFra

Registriert seit: 19. Apr 2003
1.291 Beiträge
 
Delphi 2005 Professional
 
#1

Problem mit Shellicons...

  Alt 19. Jun 2003, 14:28
Ich benutze folgende Funktion um an den ShellIconindex zu kommen:

Delphi-Quellcode:
function TServer.GetShellIcon(FileName: string): integer;
var
  SHFileInfo: TSHFileInfo;
begin
  Result := 0;
  //Falls ein Laufwerksbuchstabe übergeben wurde...
  if Length(FileName) = 1 then
    FileName := FileName + ':';
  //Laufwerke sollten mit \ enden...
  if (Length(FileName) = 2) and (copy(FileName, length(FileName), 1) = ':') and
    (copy(FileName, length(FileName), 1) <> '\') then
    FileName := FileName + '\';
  //Dateiino lesen...
  ShGetFileInfo(PChar(FileName), 1, SHFileInfo, SizeOf(TSHFileInfo),
    SHGFI_SYSICONINDEX or SHGFI_SMALLICON or SHGFI_ICON);
  //IconIndex liefern...
  Result := SHFileInfo.iIcon
end;
Das funktioniert bei 99,9% aller Dateien wunderbar, nur z.B. bei *.htm Dateien wird das Defaulticon (unbekannte Datei) anstelle des korrekten Icons (wie im Explorer dargestellt) zurückgeliefert...
  Mit Zitat antworten Zitat