PDA

Ver la Versión Completa : Extraer el Nombre y la Organización a la que está registrado Windows


Cecil
19-09-2007, 13:58:11
Hola, ¿como puedo extraer el Nombre y la Organización a la que está registrado Windows?. Un saludo y gracias.

seoane
19-09-2007, 14:21:36
¿como puedo extraer el Nombre y la Organización a la que está registrado Windows?

Pues lo puede leer en el registro. En concreto los valores que buscan están el la clave "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\" y sus nombres son "RegisteredOwner" y "RegisteredOrganization"

Y antes de que preguntes ;) aquí te dejo algo de código:

// Esta funcion lee una entrada del registro del tipo REG_SZ
function ReadRegString(Key: HKEY; Path, Name: String): String;
begin
Result:= EmptyStr;
with TRegistry.Create do
try
RootKey:= Key;
Access:= KEY_READ;
if OpenKey(Path,FALSE) then
begin
if ValueExists(Name) then
Result:= ReadString(Name);
end;
finally
Free;
end;
end;

// Para mostrar el nombre del propietario
ShowMessage(ReadRegString(HKEY_LOCAL_MACHINE,
'\Software\Microsoft\Windows NT\CurrentVersion\',
'RegisteredOwner'));

// Y para mostrar el nombre de la organizacion
ShowMessage(ReadRegString(HKEY_LOCAL_MACHINE,
'\Software\Microsoft\Windows NT\CurrentVersion\',
'RegisteredOrganization'));

Cecil
19-09-2007, 21:22:37
Vaya muchisimas gracias. Lo he probado y ha funcionado a la perfección :D:D. Un saludo.

waly2k1
22-12-2007, 08:12:15
hola Seoane, ya que estas tan generoso, tendrias por casualidad la funcion para escribir en el registro ?

Saludos y muchas gracias de antemano

dec
22-12-2007, 08:56:59
Hola,


hola Seoane, ya que estas tan generoso, tendrias por casualidad la funcion para escribir en el registro ?


No se trata de una función, aunque, me parece que existe alguna en el propio API de Windows, pero, si se trata de utilizar la clase "TRegistry" de la VCL de Delphi, entonces hablamos de un método, mejor dicho, de varios de ellos, puesto que en el Registro de Windows puedes escribir valores de varios tipos.

Echa un vistazo a métodos de la clase "TRegistry" como "WriteString", "WriteInteger", etc.