Einzelnen Beitrag anzeigen

ichbins

Registriert seit: 9. Jul 2005
Ort: Hohenaltheim
1.001 Beiträge
 
Delphi 2005 Personal
 
#18

Re: Icon aus beliebiger Datei extrahieren (z.B. *.lnk)

  Alt 20. Okt 2005, 18:01
lnks kann er bei mir schon auslesen. mach mal nicht image1.picture.icon sondern image1.canvas.draw(fileicon(filename));

hier mal mein source:
Delphi-Quellcode:
function FileIcon(Name: String):ticon;
var
  FileInfo: TSHFileInfo;
  ImageListHandle: THandle;
  aIcon: TIcon;
begin
  FillChar(FileInfo, SizeOf(FileInfo), #0);
  ImageListHandle := SHGetFileInfo(
    PChar(Name), 0, FileInfo, SizeOf(FileInfo),
    SHGFI_ICON or SHGFI_LARGEICON
  );
  try
    aIcon := TIcon.Create;
    try
      aIcon.Handle := FileInfo.hIcon;
      aIcon.Transparent := True;
    except end;
  except end;
  result:=aicon;
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
  if not opendialog1.Execute then exit;
  Application.Icon:=fileicon(opendialog1.FileName);
end;
bei mir stellt er das ausgelesene Icon als Anwendungssymbol ein. Klappt prima.


[edit] sch... eigentlich müsste ich ja eine dialektische Erörterung als Deutsch-Hausaufgabe schreiben... aber Mammi wird schon nicht schauen.
Michael Enßlin
  Mit Zitat antworten Zitat