SoloCodigo

Programación General => Delphi => Mensaje iniciado por: sergiotarrillo en Lunes 24 de Mayo de 2004, 19:14

Título: Registro De Windows -- Regedit
Publicado por: sergiotarrillo en Lunes 24 de Mayo de 2004, 19:14
En la Ayuda del Delphi, te dan un ejemplo de como trabajr con el REgEdit, especificamente recuperar el valor de un registro y este es el codigo:

//--------------------------------------------
uses Registry;
function GetRegistryValue: string;
var
  Registry: TRegistry;
  S: string;
begin
  Registry:=TRegistry.Create;

  Registry.RootKey:=HKEY_LOCAL_MACHINE;
  //False because we do not want to create it if it doesn’t exist
  Registry.OpenKey('MYKEY',False);
  Result :=Registry.ReadString('VALUE1');

  Registry.Free;
end;
//-------------------------------------------------

Claro tienes que cmabiar el valor de 'MIKEY', y el 'VALUE1', por tus datos, lo unico que conseguii era colgar mi maquina cuando lo corria ......
 :pensando:
Título: Re: Registro De Windows -- Regedit
Publicado por: vermicida en Jueves 27 de Mayo de 2004, 11:53
Yo hace poco en una aplicación usé acceso al registro y es sencillísimo, lo que pasa que ahora mismo no recuerdo exactamente las sentencias. Básicamente es crear una variable de tipo TRegistry y trabajar con ella. Por este orden, creas el objeto y especificas el RootKey, que es el key que abrirá en primer lugar; seguidamente con Open abres la ruta completa del registro concreto que desees buscar, y con write/read escribes o lees valores de ese registro. Cuando llegue a casa después del curro te posteo el código exacto.
Título: Re: Registro De Windows -- Regedit
Publicado por: BlackTigerX en Jueves 27 de Mayo de 2004, 15:11
esto:
Registry.OpenKey('MYKEY',False);
es una funcion booleana... entonces deberias llamarla asi:

if Registry.OpenKey('MYKEY',False) then
  Result :=Registry.ReadString('VALUE1')
else
  Result:='Default... o lo que sea aqui'
Título: Re: Registro De Windows -- Regedit
Publicado por: sergiotarrillo en Domingo 30 de Mayo de 2004, 01:44
Estaba vagando por internet y encontre el siguiente codigo, que funciona de la patada
pruebenlo, esta todo correcto.............

Código: Text
  1.  
  2. procedure TForm1.CmdFileProClick(Sender: TObject);
  3.   str : String;
  4. begin
  5.   with TRegistry.Create do
  6.     try
  7.       RootKey := HKEY_LOCAL_MACHINE;
  8.       //asiganado la KeyRoot
  9.  
  10.       //ahora abriendo la clave o key
  11.       if OpenKey('\Software\Microsoft\Windows\CurrentVersion',
  12.                  false) then begin
  13.           str := ReadString('ProgramFilesDir');
  14.     ShowMessage(str);
  15.           CloseKey;
  16.       end;
  17.     finally
  18.       Free;
  19.     end;
  20. end;
  21.  
  22.