【发布时间】:2011-04-06 21:41:56
【问题描述】:
您好,我在 Delphi 6 中使用 Francois Piette 的 RasDial,但它在 Delphi 2010 中停止工作 我怎样才能像以前一样继续使用这些功能?
class function Encryption.DecriptPasswd(strPasswd: string): string;
type
PWORD = ^WORD;
var
Buffer : String;
PW : String[255];
P : PWORD;
I : Integer;
V : Integer;
begin
PW := ' ';
P := PWORD(@PW[0]);
I := 1;
while I <= Length(strPasswd) do
begin
Buffer := Copy(strPasswd, I, 5);
I := I + 5;
V := StrToInt(Buffer) - 34567;
P^ := V;
Inc(P);
end;
Result := PW;
end;
class function Encryption.EncriptPasswd(strPasswd: string): string;
type
PWORD = ^WORD;
var
Len : Integer;
I : Integer;
V : DWORD;
P : PChar;
Buffer : String[255];
begin
Buffer := strPasswd;
Len := Length(Buffer) + 1;
if (Len mod 2) <> 0 then
Inc(Len);
if Len < 10 then
Len := 10;
I := Length(Buffer);
if I = 0 then
Buffer := IntToStr(GetTickCount)
else
while Length(Buffer) < 10 do
Buffer := Buffer + Buffer;
SetLength(Buffer, I);
Result := '';
P := PChar(@Buffer[0]);
for I := 1 to Len div 2 do
begin
V := 34567 + PWORD(P)^;
P := P + 2;
Result := Result + Format('%5.5d', [V]);
end;
end;
【问题讨论】:
-
Jiraya,欢迎来到 SO!我将您的问题标记为“delphi”。您有特定版本的标签,但这是一个更普遍的问题(例如,从 D7 升级到 DXE 的人可能会遇到同样的问题。)我也有一个“delphi”的监视标签和类似的子标签,如“delphi-6”don不要出现 - 我偶然发现了这个。
-
如果是 Francois PIETTE 的代码,您可能需要发帖到 lists.elists.org/cgi-bin/mailman/listinfo/delphi,因为他在那里仍然很活跃 - 我还没有在这里看到他。
标签: delphi unicode delphi-2010 delphi-6