请教语句意思!

cnwikee 2008-08-18 04:58:05
各位:
我没学过delphi语言,但是这个里面的这个算法我要用到。我用的其他的语言,想各位懂的同仁能不能在后面都备注个意思。
帮我翻译一下。我好尝试按我的语言写。

如果能够直接翻译成VB就好,我不大清楚,查资料好像是delphi的很多控制之类的VB不支持,所以有些简单的可以翻译,深层的就不能了吧。

不知道这个能不能直接翻译过来。如果不能就帮我在后面像那样 备注下意思 。多谢各位。请帮忙

program getpass;

{$APPTYPE CONSOLE}

uses
SysUtils,
Registry,
Windows;

var
Reg: TRegistry; '变量 REG:类型为 TRegistry
buf: PByteArray; '变量 buf:类型为 PBytearray
size: Integer; '变量 size:整数型
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);

i: integer; '变量 i:类型为 整数型
username, password: string; '变量 username,password:类型为 字节型
begin
try
Reg := TRegistry.Create;
try
Reg.RootKey := HKEY_LOCAL_MACHINE;
if Reg.OpenKeyReadOnly('SOFTWARE\Eset\Nod\CurrentVersion\Modules\Update\Settings\Config000\Settings') 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;

WriteLn('Username: ' + username);
WriteLn('Password: ' + password);
end;
finally
Reg.CloseKey;
Reg.Free;
end;
except
on E: Exception do
Writeln(E.Classname, ': ', E.Message);
end;
end.
...全文
108 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
cnwikee 2008-08-19
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 shuihan20e 的回复:]
Delphi(Pascal) codewhile i < size - 1 do
begin
password := password + chr(buf[i] xor mask[i]);
Inc(i, 2);
end;

难道是这句?

应该是异或再转换成字符,拼成字符串吧
[/Quote]

对就是这句 这个 password + chr(buf[i] xor mask[i]);

chr(buf[i] 和 mask[i]) 这两个值异或比较

这两个值分别是什么意思呢?
shuihan20e 2008-08-18
  • 打赏
  • 举报
回复
while i < size - 1 do 
begin
password := password + chr(buf[i] xor mask[i]);
Inc(i, 2);
end;
难道是这句?

应该是异或再转换成字符,拼成字符串吧
cnwikee 2008-08-18
  • 打赏
  • 举报
回复
嗯 我知道是从注册表读出密码来

但是密码是加密成了 (61, D6, D4, E9, DD, F0, FB, F2, 5B, 64, 35, AD, B7, C8, 19, 75, EC, 31, 2B, BC);

这个程序是将密码还原的,不清楚那段换算的意思
shuihan20e 2008-08-18
  • 打赏
  • 举报
回复
将用户名和密码从注册表HKEY_LOCAL_MACHINE、SOFTWARE\Eset\Nod\CurrentVersion\Modules\Update\Settings\Config000\Settings里读出来
cnwikee 2008-08-18
  • 打赏
  • 举报
回复
主要是那个算法

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧