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 25-09-2006
afarenas afarenas is offline
Miembro
 
Registrado: sep 2003
Ubicación: bogota
Posts: 46
Poder: 0
afarenas Va por buen camino
leer una veriable del Regedit de windows con Delphi

compañeros:
Necesito leer una variable del regedit de windows, alguien
me podria indicar como hacer esto en Delphi.
Gracias.
Responder Con Cita
  #2  
Antiguo 25-09-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
Usa la clase TRegEdit. Para más información busca en la ayuda de Delphi o en estos mismos foros.

// Saludos
Responder Con Cita
  #3  
Antiguo 25-09-2006
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
Hola. Supongo que roman se refiere a la clase TRegistry. ¿cierto?

Saludos
__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #4  
Antiguo 25-09-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
Muy cierto

// Saludos
Responder Con Cita
  #5  
Antiguo 26-09-2006
afarenas afarenas is offline
Miembro
 
Registrado: sep 2003
Ubicación: bogota
Posts: 46
Poder: 0
afarenas Va por buen camino
no me funciona

Estuve tratando con esa clase pero no pude hacerla funcionar, no se como
mire el ejemplo que trae la ayuda de delphi y tampoco me funcionó,
podria alguno colaborarme con algun ejemplo?
Responder Con Cita
  #6  
Antiguo 26-09-2006
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
Allí te va:

Código Delphi [-]
uses registry;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  reg: TRegistry;
begin
  reg := TRegistry.Create;
  try
    if reg.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\RunMRU', False) then
      ShowMessage('El último comando ejecutar de este usuario fue: ' + reg.ReadString('a'));
  finally
    reg.Free;
  end;
end;

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #7  
Antiguo 26-09-2006
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Yo solo añadiria dos cosas:

Código Delphi [-]
 with TRegistry.Create do
  try
    RootKey:= HKEY_CURRENT_USER; // <-- La clave root
    if OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\RunMRU',FALSE) then
    begin
      ShowMessage('El último comando ejecutar de este usuario fue: ' + ReadString('a'));
      CloseKey; // Y cerrar al salir, solo por educacion jejeje
    end;
  finally
    Free;
  end;

La verdad es que en el caso anterior se podía omitir la Rootkey ya que por defecto es HKEY_CURRENT_USER pero por si es otra diferente ahí queda el dato.
Responder Con Cita
  #8  
Antiguo 26-09-2006
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
Cita:
Empezado por seoane
La verdad es que en el caso anterior se podía omitir la Rootkey ya que por defecto es HKEY_CURRENT_USER pero por si es otra diferente ahí queda el dato.
Efectivamente, la raiz por defecto es HKCU, por eso la omití. Tené por seguro que al destruir el objeto, la llave también se cerrará... Te dejo la implementación actual del destructor de la clase TRegistry:

Código Delphi [-]
destructor TRegistry.Destroy;
begin
  CloseKey;
  inherited;
end;

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #9  
Antiguo 26-09-2006
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Cita:
Empezado por jachguate
Tené por seguro que al destruir el objeto, la llave también se cerrará
Por supuesto, por eso puse el comentario, mas o menos gracioso (veo que no tanto ), para dar a entender que en este caso tampoco era necesario usar CloseKey. La intención de puntualizar lo del Rootkey y Closekey es que al usar "copiar y pegar" no se este olvidando algo importante, en ningún caso corregirte. Imagínate que quiere leer una clave fuera de HKEY_CURRENT_USER o varias claves diferentes, en ese caso ya no daría igual.
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
Leer ficheros Mac en Delphi thagson Varios 6 23-08-2006 14:12:08
leer archivos de linux con windows RER Linux 0 12-08-2005 16:23:11
cual api es del regedit? Ryu API de Windows 2 07-04-2005 17:32:23
Clave del Regedit.... Phacko Varios 2 14-03-2005 13:08:51
como modificar regedit edy_aca Varios 8 12-07-2004 20:47:32


La franja horaria es GMT +2. Ahora son las 12:28:33.


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