分享

delphi 读取ESET NOD32 的用户名与密码

 aaie_ 2012-10-20
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;

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多