Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 12-04-2006
Avatar de German
German German is offline
Miembro
 
Registrado: may 2003
Ubicación: Barcelona - España
Posts: 133
Poder: 24
German Va por buen camino
Supongo que te refieres a que una determinada extensión de archivo aparezca en el explorador de Windows con un determinado icono, y que se abra con un determinado programa. Esto puede conseguirse a través de los registros del sistema, pero tendrás que hacerlo en cualquier ordenador que utilice el ejecutable hecho en delphi, e incluir el icono que utilizara en el directorio de tu programa. Para ello, bastaría que comprobaras en el evento "OnCreate" del form principal si estos registros ya están creados, y si no, crearlos.

Por ejemplo, si la extensión fuera ".jur":
Código Delphi [-]
Uses (...) ShlObj, Registry;

(...)

procedure TForm1.FormCreate(Sender: TObject);
var Registro: tRegistry;
begin
  Registro := tRegistry.Create;
  with Registro do
  begin
    RootKey := HKEY_CLASSES_ROOT;
    if not OpenKey('.jur',False) then
    begin
      CreateKey('.jur');
      OpenKey('.jur',False);
      WriteString('','jur');
      CloseKey;
      CreateKey('jur');
      OpenKey('jur',False);
      // Descripción del tipo de archivo personal:
      WriteString('','Archivo personal de mi programa');
      CloseKey;
      CreateKey('jur\DefaultIcon');
      OpenKey('jur\DefaultIcon',False);
      // Ruta hasta el icono que utilizara el tipo de archivo personal:
      WriteString('','C:\MiPrograma\MiIcono.ico,0');
      CloseKey;
      CreateKey('jur\Shell\Open');
      OpenKey('jur\Shell\Open',False);
      // Descripción que aparece en el menu contextual del explorador:
      WriteString('', '&Abrir archivo personal'); 
      CloseKey;
      CreateKey('jur\Shell\Open\Command');
      OpenKey('jur\Shell\Open\Command',False);
      // Ruta hasta el EXE que abrirá el tipo de archivo personal:
      WriteString('', '"C:\MiPrograma\MiEjecutable.exe" "%1"');
      CloseKey;
      // Esto actualiza la "vista" del explorador:
      SHChangeNotify( SHCNE_ASSOCCHANGED,SHCNF_IDLIST,nil, nil);
    end;
    CloseKey;
    Free;
  end;
end;


Nota: La creación de los registros también la podria hacer el programa de instalación de tu aplicación.

Salu2.
__________________
Tengo las manos llenas de dedos... Tengo los dedos llenos de teclas...
Tengo las teclas desordenadas... Tengo el desorden muy controlado...
Tengo el control en mis manos.

Última edición por German fecha: 14-04-2006 a las 00:15:11.
Responder Con Cita
 



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
Como reiniciar (cerrar y volver a abrir) mi propio programa?? AFilth Varios 8 11-08-2005 08:20:39
Como referencio un objeto desde un procedure propio? alehillebrand OOP 3 13-07-2005 16:31:48
Grabar CD desde programa delphi hibero Varios 2 22-10-2004 19:35:00
Ejecutar un programa externo desde un programa de Delphi Roger_Fernandez Varios 3 02-09-2004 18:05:36
Ejecutar winzip desde programa en Delphi Newbie API de Windows 6 11-02-2004 13:02:37


La franja horaria es GMT +2. Ahora son las 03:17:55.


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