本文整理自网络,侵删。
var
Form1: TForm1;
mask: array[0..19] of Byte = ($61, $D6, $D4, $E9, $DD, $F0, $FB, $F2, $5B, $64, $35, $AD, $B7, $C8, $19, $75, $EC, $31, $2B, $BC);
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
Reg: TRegistry;
buf: PByteArray;
size: Integer;
i: integer;
username, password: string;
begin
try
Reg := TRegistry.Create;
Reg.RootKey := HKEY_LOCAL_MACHINE;
if Reg.OpenKey('SOFTWARE\ESET\ESET Security\CurrentVersion\Plugins\01000400\Profiles\@My profile',false) then
begin
username := Reg.ReadString('Username');
size := Reg.GetDataSize('Password');
GetMem(buf, size);
Reg.ReadBinaryData('Password', buf^, size);
i := 0;
while i < size - 1 do
begin
password := password + chr(buf[i] xor mask[i]);
Inc(i, 2);
end;
ShowMessage('Username: ' + username);
ShowMessage('Password: ' + password);
end;
finally
Reg.CloseKey;
Reg.Free;
end;
end;
相关阅读 >>
Delphi 通过twebbrowser文档中的id查找html元素
更多相关阅读请进入《Delphi》频道 >>