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 17-10-2006
[FGarcia] FGarcia is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Cordoba, Veracruz, México
Posts: 1.123
Poder: 20
FGarcia Va por buen camino
Crear Claves de registro con InnoSetup

Saludos a todos !

Con este programa de consola al ejecutarlo me escribe una clave de registro para ejecutar mi aplicacion al iniciar Windows, lo he prbado con XP Home y funciona OK.

Código Delphi [-]
program Iniciar;
{$APPTYPE CONSOLE}
uses
  SysUtils, Registry, Windows;
var
  reg: TRegistry;
begin
  { TODO -oUser -cConsole Main : Insert code here }
  reg:= TRegistry.Create;
  //HKEY_LOCAL_MACHINE para cualquier usuario
  reg.RootKey := HKEY_LOCAL_MACHINE;
  reg.OpenKey('\Software\Microsoft\Windows\CurrentVersion\Run', True);
  reg.WriteString('Mi_Programa','C:\Archivos de Programa\GalaSys\Programa.exe');
  reg.CloseKey;
  freeandnil(reg);
end.

mis preguntas son dos:

1. Como ejecutar este programa desde el instalador (Inno Setup). Es decir que al terminar la instalacion o en algun momento de la misma se ejecute esta aplicacion para crear la clave del registro (¿crear? lo correcto seria añadir o ¿no? pues la clave ya esta creada solo añado una entrada a la misma) Por supuesto transparente al usuario.

2. Inno setup trae un ejemplo donde elimina las entradas de registro que se crearon durante la instalacion de determinado programa, pero no trae un ejemplo de si el puede crear dichas entradas directamente sin usar un programa como el que menciono.

Se agradece la ayuda!!
Responder Con Cita
  #2  
Antiguo 17-10-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
1. No es necesario contestar porque:

2. No sé a qué ejemplo te refieras pero el mismo debe servirte porque no hay una parte especial para borrar entradas del registro sino para crearlas, con la posiblidad de indicar que se borre la entrada al momento de desinstalar la aplicación.

Así, para el ejemplo que pones debería bastar:

Código Delphi [-]
[Registry]
Root: HKLM; Subkey: "Software\Microsoft\Windows\CurrentVersion\Run"; ValueType: string; ValueName: "Mi_Programa"; ValueData: "{app}\Programa.exe";

Nota que en lugar de poner "C:\Archivos de Programa\GalaSys\Programa.exe" es mejor especificar {app} que siempre se referirá a la carpeta donde se instala el programa, que no necesariamente será la que pongas por defecto.

Con eso se crea la clave al momento de la instalación. Si quieres que se borre al desinstalar basta que añadas al final de la línea anterior:

Código:
Flags: uninsdeletevalue
// Saludos
Responder Con Cita
  #3  
Antiguo 17-10-2006
[FGarcia] FGarcia is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Cordoba, Veracruz, México
Posts: 1.123
Poder: 20
FGarcia Va por buen camino
Gracias Roman!

De hecho al momento de escribir este mensaje ya lo habia solucionado (Claro! previo "borrado no intencional de la clave "Software\Microsoft\Windows\CurrentVersion\Run" y todo lo que tenia bajo ella ), aunque no habia entendido el uso del "Flags: uninsdeletevalue"
yo lo habia solucionado asi:

Código Delphi [-]
[Registry]
Root: HKLM; Subkey: Software\Microsoft\Windows\CurrentVersion\Run; ValueType: string; ValueName: WinTrapp; ValueData: {app}\WinTrapp.exe; Flags: createvalueifdoesntexist; Tasks: ; Languages: 
Root: HKLM; Subkey: Software\Microsoft\Windows\CurrentVersion\Run; ValueType: string; ValueName: WinTrapp; ValueData: {app}\WinTrapp.exe; Flags: uninsdeletevalue

Lo corregire a la manera que me muestras que es mas simple.

Muchas Gracias!
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
Crear Claves ajenas ¿? Cosgaya MySQL 2 01-07-2006 18:42:19
Componente en Innosetup hEakfall Varios 5 20-11-2005 23:55:25
como importar claves al Registro (desde archivo.reg) sitrico Varios 1 03-12-2004 17:34:26
Añadir claves al registro y verificarlas Carlex API de Windows 1 02-11-2004 10:29:48
Generar claves en registro Pablo Carlos API de Windows 2 02-07-2004 00:57:43


La franja horaria es GMT +2. Ahora son las 07:53:00.


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