War bisher immer der Meinung ich müsste ein Bitmap zuweisen?!?.
Da ich mich nicht nur auf EXE/
DLL beschränken will verwende ich ExtractAssociatedIcon.
Sinnvoll ist auch noch jeweils das Bild zurückzusetzen ansonsten überlappen
sich die Bilder bei mehrmaliger Zuweisung.
Super funktioniert Danke - anbei leicht geänderte Code für andere "Unwissende"
Delphi-Quellcode:
procedure TForm1.Button4Click(Sender: TObject);
var
ICO: TIcon;
Large, Small: HIcon;
IconIndex: Word;
begin
ICO := TIcon.Create;
try
IconIndex := 0;
ICO.Handle := ExtractAssociatedIcon(hInstance, PChar(Edit1.Text), IconIndex);
SpeedButton1.Glyph := nil;
SpeedButton1.Glyph.Width := ICO.Width;
SpeedButton1.Glyph.Height := ICO.Height;
SpeedButton1.Glyph.Canvas.Draw(0, 0, ICO);
finally
ICO.Free;
end;
end;