PDA

Ver la Versión Completa : usar el Tregistry con delphi


jeremiselxi
28-09-2008, 02:29:31
hola amigos de el foro, como estan. Dios les bendiga...
leean lo que quiero hacer :), busque en internet como hacer para k me aparesca un mensaje al inicio de windows y me encontre con este truco,
luego de escribir regedit en inicio-ejecutar,
buscar esta direccion en el registro
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\WinLogon]

Modificamos el valor de legalnoticecaption con el título del mensaje

Modificamos el valor de legalnoticetext con el texto del mensaje y listo. eso esta muy bien, pero como lo hago con delphi?

buscando y buscando,

logre hacer esto,
un boton para guardar los datos


uses registry;
procedure TForm1.Button1Click(Sender: TObject);
var reg:tregistry;
begin

Reg := TRegistry.Create;

// Guardamos las opciones
try
Reg.RootKey := HKEY_LOCAL_MACHINE;
if Reg.OpenKey( '\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\WinLogon', True ) then
begin
Reg.WriteString( 'legalnoticecaption', edit1.Text );
Reg.WriteString( 'LegalNoticeText', memo1.Text );
Reg.CloseKey;
end;
finally
Reg.Free;
end;

end;



y luego este otro boton para mostrarlo a ver si es verdad k estan,


procedure TForm1.Button2Click(Sender: TObject);
var reg:tregistry;
begin
// Creamos un objeto para manejar el registro
Reg := TRegistry.Create;

// Guardamos las opciones
try
Reg.RootKey := HKEY_LOCAL_MACHINE;
if Reg.OpenKey( '\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\WinLogon', True ) then
begin
edit2.Text := Reg.ReadString( 'LegalNoticeCaption' );
memo2.Text := Reg.ReadString( 'LegalNoticeText' );
Reg.CloseKey;
end;
finally
Reg.Free;
end;
end;



pero lo interezante es k lo escribo en el edit1 y en el memo1 aparece en el edit2 y el memo2, pero cuando busco con el regedit la ruta, no me aparece nada. alguien ayudeme por favor?,
y si me pueden poner comentarios seria mucho mejor:) ya k ahora es k estoy comenzando a usar el registro

seoane
28-09-2008, 12:03:38
No se si sera un error al escribir el mensaje pero en la ruta no es "WindowsNT" sino "Windows NT" (con un espacio en entre windows y NT)

jeremiselxi
28-09-2008, 19:33:14
mi hermano muchas gracias, ese era el error:). Espero algun dia ser un fuerte como tu:) para ayudar a los demas