下面演示怎么写和读注册表的内容:
在FORM上放两个EDIT 和两个BUTTON
写注册表内容:
procedure TForm1.Button1Click(Sender: TObject);
var
; Reg: TRegistry;
begin
; Reg := TRegistry.Create;
; try
; ; Reg.RootKey := HKEY_CURRENT_USER;
; ; if Reg.OpenKey('/Software/MyApplicationName', True) then
; ;begin
; ; ; Reg.WriteString('PWD',Edit1.Text);
; ; ; Reg.CloseKey;
; ; end;
; finally
; ; Reg.Free;
; ; inherited;
; end;
end;
读注册表内容:
procedure TForm1.Button2Click(Sender: TObject);
var
; Reg: TRegistry;
; Pwd: String;
begin
; Reg := TRegistry.Create;
; try
; ; Reg.RootKey := HKEY_CURRENT_USER;
; ; if Reg.OpenKey('/Software/MyApplicationName', True) then
; ;begin
; ; ; Pwd := Reg.ReadString('PWD');
; ; ; Reg.CloseKey;
; ; ; edit2.text:= pwd;
; ; end;
; finally
; ; Reg.Free;
; ; inherited;
; end;
end;
更多这有关TRegistryr的内容请看帮助。
不过这种保存密码的方法其实是很差的方法。
因为要考虑到:
即使你保存的是加密过后的密码,但如果用户删掉了注册表相关的内容
的话,这时候程序将怎么做?
又:如果将密码保存在文件中,比如用写入自定义类型文件中,那么用户也有可能
删掉这个文件,这也是一个问题