Ver Mensaje Individual
  #4  
Antiguo 14-08-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Caroso.

Agregando otra opción a la de nlsgarcia, también podes obtener el contenido del ícono de un ejecutable usando la función PrivateExtractIcons.

Ejemplo:
Código Delphi [-]
...
implementation

function PrivateExtractIcons(lpszFile: PChar; nIconIndex, cxIcon, cyIcon: integer;
     phicon: PHANDLE; piconid: PDWORD; nicon, flags: DWORD): DWORD;
     stdcall ; external 'user32.dll' name 'PrivateExtractIconsA';

procedure TForm1.Button1Click(Sender: TObject);
var
 hndIcon : THandle;
 idIcon  : DWORD;
 aIcon   : TIcon;
begin
  if OpenDialog1.Execute then
    if PrivateExtractIcons(PChar(OpenDialog1.FileName),0,16,16,@hndIcon,@idIcon,1,LR_LOADFROMFILE) <> 0 then
    try
      aIcon := TIcon.Create;
      try
        aIcon.Handle := hndIcon;
        aIcon.SaveToFile(ExtractFilePath(OpenDialog1.FileName) + 'EXE_ICON.ICO');
      finally
        aIcon.Free;
      end;
    finally
      DestroyIcon(hndIcon);
    end;
end;
...
Pero como menciona Neftali, no está claro en tu mensaje si lo que deseas obtener es la imágen del ícono o la ruta.
Ahora si lo que buscas es obtener la ruta al archivo .ico que originalmente cargó el ejecutable, la respuesta es: No es posible.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita