Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-08-2007
Khronos Khronos is offline
Miembro
 
Registrado: abr 2007
Posts: 298
Poder: 18
Khronos Va por buen camino
Establecer un programa para una extension

Hola tengo un pequeño problemilla y no sabia bien dondo ponerlo ya que no es una duda de lenguaje.
He hecho un reproductor de musica y video. La lista de reproduccion la guarda en un texto bajo la extension .phx. Lo que intento hacer es ponerle un icono propio para esa extension, tambien que al abrirlo se ejecute mi programa.

Se que hay que emplear el registro y concretamente la clave HKEY_CLASSES_ROOT pero no tengo ni idea de como hacerlo, se manejar el registro pero no se como hacer algo como esto.
Espero que puedan ayudarme.

Salu2
Responder Con Cita
  #2  
Antiguo 11-08-2007
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
Una excelente guía para configurar el registro la puedes encontrar en

www.winguide.com

Suerte
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #3  
Antiguo 12-08-2007
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Código Delphi [-]
var
 hKey: Windows.HKEY;
 App: string;
begin
 App := '"'+ParamStr(0)+'" %*';
 RegCreateKey(HKEY_CLASSES_ROOT, '.abc\shell\open\command', hKey);
 RegSetValue(hKey, nil, REG_SZ, PChar(App), Length(App));
 RegCloseKey(hKey);
end;

Lo subrayado es la extensión manejada.

PD: No olvides procesar luego el ParamCount, y el vector ParamStr.

Suerte
Responder Con Cita
  #4  
Antiguo 13-08-2007
Khronos Khronos is offline
Miembro
 
Registrado: abr 2007
Posts: 298
Poder: 18
Khronos Va por buen camino
Gracias cHackAll, funciona perfectamente y ya registre la extension .phx para que ejecute mi programa.
Pero no me funciona ParamStr y ParamCount.

Código Delphi [-]
procedure TFPlayer.FormCreate(Sender: TObject);
begin
If ParamCount>0 then begin
showmessage(Paramstr(1));
end;
end;

Me sale el mensaje en blanco. Lo unico que necesito obtener es la path del archivo que llamo a mi programa pero no me funciona.

Salu2
Responder Con Cita
  #5  
Antiguo 13-08-2007
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Si es un solo parámetro te aconsejo cambiar la siguiente parte:

Código Delphi [-]
...
 
 App := '"'+ParamStr(0)+'" "%1"';

...

Edito: Si es la ruta lo que necesitas, no olvides tambien usar ExtractFilePath

Saludos

Última edición por cHackAll fecha: 13-08-2007 a las 16:24:55.
Responder Con Cita
  #6  
Antiguo 13-08-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 29
jhonny Va camino a la famajhonny Va camino a la fama
Cita:
Empezado por poliburro Ver Mensaje
Una excelente guía para configurar el registro la puedes encontrar en

www.winguide.com

Suerte
www.winguide.com muestra que el dominio esta disponible para la venta, supongo que mas bien hablas de http://www.pctools.com/guides/ o lo que es lo mismo www.winguide.net
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #7  
Antiguo 15-08-2007
Khronos Khronos is offline
Miembro
 
Registrado: abr 2007
Posts: 298
Poder: 18
Khronos Va por buen camino
Mil gracias cHackAll, va de perlas. Se solucionaba con esto:

Código Delphi [-]
 App := '"'+ParamStr(0)+'" "%1"';

Tengo otra duda, como podria asignar un icono a una extension?
Responder Con Cita
  #8  
Antiguo 16-08-2007
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Cita:
Empezado por Khronos
...Tengo otra duda, como podria asignar un icono a una extension?
Me alegra que este andando bien tu proyecto; al asignarle a una extensión una determinada aplicación, la misma adquiere el icono que la aplicación tiene, caso contrario puedes crear una clave como ésta:

Código Delphi [-]
var
 hKey: Windows.HKEY;
 Icon: string;
begin
 Icon := '%SystemRoot%\System32\shell32.dll,3';
 RegCreateKey(HKEY_CLASSES_ROOT, '.abc\DefaultIcon', hKey);
 RegSetValue(hKey, nil, REG_SZ, PChar(App), Length(App));
 RegCloseKey(hKey);
end;

Donde el ,3 estaría definido por los recursos de la librería o aplicación. tambien puedes definirlo con un archivo Icon := 'c:\micono.ico' o el nombre de tu aplicación ,0 para que tenga exactamente el icono de tu aplicacion.

Saludos
Responder Con Cita
  #9  
Antiguo 16-08-2007
Khronos Khronos is offline
Miembro
 
Registrado: abr 2007
Posts: 298
Poder: 18
Khronos Va por buen camino
No me acaba de funcionar, use este codigo:


Código Delphi [-]
var hKey: Windows.HKEY;
 Icon: string;
begin 
Icon := 'C:\Archivos de programa\Phoenix\ListPlayer.ico,3';
 RegCreateKey(HKEY_CLASSES_ROOT, '.phx\DefaultIcon', hKey); 
RegSetValue(hKey, nil, REG_SZ, PChar(Icon), Length(Icon)); 
RegCloseKey(hKey);
end;

Salu2
Responder Con Cita
  #10  
Antiguo 16-08-2007
Avatar de D-MO
D-MO D-MO is offline
Miembro
 
Registrado: ago 2005
Ubicación: root@debian:/#
Posts: 1.042
Poder: 20
D-MO Va por buen camino
[FONT=verdana,geneva,lucida,'lucida grande',arial,helvetica,sans-serif]Usa esta línea:
[/font]
Código Delphi [-]
Icon := 'C:\Archivos de programa\Phoenix\ListPlayer.ico';

El ,3 al final era innecesario ya que estabas llamando al icono de una vez.

Saludos.
Responder Con Cita
  #11  
Antiguo 17-08-2007
Khronos Khronos is offline
Miembro
 
Registrado: abr 2007
Posts: 298
Poder: 18
Khronos Va por buen camino
Ya lo habia probado sin el 3, pero le habia puesto comillas a la path por eso no me iba. Fallo tonto.
Muchas gracias, he solucionado el problema ahora me faltan los ultimos retoques al reproductor y pronto terminare la web para su descarga.


Salu2
Responder Con Cita
Respuesta



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
Probad este programa para visualizar vuestros archivos con extensión 3ds kakarotv5 Gráficos 0 26-02-2007 14:26:57
Microsoft está desarrollando una extensión para Firefox marcoszorrilla Noticias 4 19-11-2006 06:11:54
Como manejar el modem de la PC para establecer un comunicacion con modem de 1200 baud Roger_Fernandez Varios 0 01-11-2004 12:33:38
Establecer DLL IDA3532.DLL para access desde DELPHI Kafu Conexión con bases de datos 0 13-06-2003 17:01:13


La franja horaria es GMT +2. Ahora son las 00:09:23.


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