Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-08-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 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
  #2  
Antiguo 15-08-2013
Avatar de nlsgarcia
[nlsgarcia] nlsgarcia is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Caracas, Venezuela
Posts: 2.206
Poder: 23
nlsgarcia Tiene un aura espectacularnlsgarcia Tiene un aura espectacular
Caroso,

Esta es una variante basada en el código de los Msgs #3 y #4:
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
   Icon: TIcon;
   OpenDialog : TOpenDialog;

begin

   OpenDialog := TOpenDialog.Create(Self);
   Icon := TIcon.Create;

   if OpenDialog.Execute then
   try

      // Extrae el Primer Icon del Archivo Seleccionado
      Icon.Handle := ExtractIcon(Handle, PChar(OpenDialog.FileName), 0);
      Icon.SaveToFile(ExtractFilePath(Application.ExeName) + 'IconFile' + '.ico');

   finally

      Icon.Free;
      OpenDialog.Free;

   end;

end;
Espero sea útil

Nelson.
Responder Con Cita
  #3  
Antiguo 15-08-2013
Caroso Caroso is offline
Miembro
NULL
 
Registrado: jul 2013
Posts: 44
Poder: 0
Caroso Va por buen camino
Smile Muchas gracias

Cita:
Empezado por nlsgarcia Ver Mensaje
Caroso,

Esta es una variante basada en el código de los Msgs #3 y #4:
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
   Icon: TIcon;
   OpenDialog : TOpenDialog;

begin

   OpenDialog := TOpenDialog.Create(Self);
   Icon := TIcon.Create;

   if OpenDialog.Execute then
   try

      // Extrae el Primer Icon del Archivo Seleccionado
      Icon.Handle := ExtractIcon(Handle, PChar(OpenDialog.FileName), 0);
      Icon.SaveToFile(ExtractFilePath(Application.ExeName) + 'IconFile' + '.ico');

   finally

      Icon.Free;
      OpenDialog.Free;

   end;

end;
Espero sea útil

Nelson.
Muy bueno el codigo Nelson... muchas gracias me funciona de 10... y Muchas gracias a todos los demás por haber compartido sus conocimientos con los demas... un saludo y abrazo
Responder Con Cita
  #4  
Antiguo 16-08-2013
blackx5n blackx5n is offline
Miembro
 
Registrado: feb 2008
Posts: 51
Poder: 19
blackx5n Va por buen camino
Hay alguna forma de extraer el icono de cualquier archivo sin que este sea un *.exe

He probado estos ejemplos y funciona pero algunos iconos me salen de color gris, no salen igual al icono original del programa.
Responder Con Cita
  #5  
Antiguo 16-08-2013
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.449
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por blackx5n Ver Mensaje
Hay alguna forma de extraer el icono de cualquier archivo sin que este sea un *.exe
¿Qué tipo de archivos?
En ese caso, tal vez debas primero acceder a la aplicación asociada por defecto para abrirla y luego extraer el icono asociada a esta.
Por ejemplo, los ficheros .PAS, no contienen icono, pero sí visualizan uno.

Si quieres extraer ese icono debes seguir este procedimiento.

¿Es a esto a lo que te refieres?
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #6  
Antiguo 16-08-2013
blackx5n blackx5n is offline
Miembro
 
Registrado: feb 2008
Posts: 51
Poder: 19
blackx5n Va por buen camino
Si me referia a eso, el ejemplo que indicas ilustra perfectamente lo que preguntaba.

Era la duda que tenia por ejemplo si tengo un archivo *.pdf y este tiene un Icono y la aplicacion contiene un Icono diferente al archivo.

Los iconos como el bloc de notas, carpetas, papelera de reciclaje, etc estos estan ligados a un archivo *.dll mas concretamente shell32.dll en el caso de windows 7 y tendria que abrir este archivo dll y extraer los iconos.

Con tu respuesta me aclaras la duda que tenia, gracias Neftali
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
extraer informacion de un archivo .txt richy08 PHP 8 16-10-2010 06:17:32
Extraer el texto de un archivo UTF-8 ixMike Varios 0 10-10-2006 19:31:45
Extraer el icono de un archivo dec Trucos 0 30-06-2006 23:53:43
no carga icono de un archivo de recursos Patricio Gráficos 0 10-02-2006 14:37:15
extraer un icono gemma Varios 10 28-06-2003 11:45:26


La franja horaria es GMT +2. Ahora son las 20:50:41.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi