Ver Mensaje Individual
  #3  
Antiguo 14-08-2013
Avatar de nlsgarcia
[nlsgarcia] nlsgarcia is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Caracas, Venezuela
Posts: 2.206
Reputación: 21
nlsgarcia Tiene un aura espectacularnlsgarcia Tiene un aura espectacular
Caroso,

Cita:
Empezado por Caroso
...como se puede obtener el icono de un ejecutable...
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
const
   FileIcons = 'C:\Windows\System32\Shell32.dll';

var
   Icon : TIcon;
   Image : TImage;
   NumberOfIcons, i : Integer;

begin

   Icon := TIcon.Create;
   Image := TImage.Create(Self);

   try

      // Obtiene el número de Icons del archivo
      NumberOfIcons := ExtractIcon(Handle, PChar(FileIcons), UINT(-1));

      // Extrae todos los Icons del archivo y los salva a disco
      for i := 0 to NumberOfIcons - 1  do
      begin
         Icon.Handle := ExtractIcon(Handle, PChar(FileIcons), i);
         Image.Picture.Assign(Icon);
         Image.Picture.SaveToFile(ExtractFilePath(Application.ExeName) + 'Icon-' + IntToStr(i) + '.ico');
      end;

   finally

      Icon.Free;
      Image.Free;

   end;

end;
El código anterior extrae por medio de la API ExtractIcon todos los Icons del archivo referenciado en FileIcons y los salva a disco.

Espero sea útil

Nelson.

Última edición por nlsgarcia fecha: 14-08-2013 a las 18:43:20.
Responder Con Cita