Extraer el icono asociado a un archivo

2833 vistas

Para poder capturar el icono asociado a un fichero vamos a usar la función ExtractAssociatedIcon definida en la unidad ShellAPI

Este ejemplo captura el icono y lo deja en un TImage



delphi
  1. procedure TForm1.Button1Click(Sender: TObject);
  2. var
  3.   Icono: TIcon;
  4.   Indice: word;
  5. begin
  6.   Icono := TIcon.Create;
  7.   {Indice del icono a extraer}
  8.   Indice := 0;
  9.   Icono.handle := ExtractAssociatedIcon(hInstance, Pchar('c:\kk\dlib.zip'), Indice);
  10.   Image1.Picture.Bitmap.Width := Icono.Width;
  11.   Image1.Picture.Bitmap.Height := Icono.Height;
  12.   Image1.Picture.Bitmap.Canvas.Draw(0, 0, Icono);
  13.   Icono.Free;
  14. end;