📄 yfglr.pas
字号:
unit yfglr;
interface
uses
SysUtils, Classes, windows;
function Get_SerialNo: string;stdcall;
function get_date: tdatetime;stdcall;
function get_regsn: string;stdcall;
function get_pass(password:string): boolean;stdcall;
function Get_Serial: string;stdcall;
implementation
function Get_SerialNo: string;
var
VolumeSerialNumber : DWORD;
MaximumComponentLength : DWORD;
FileSystemFlags : DWORD;
begin
result := '';
try
GetVolumeInformation(PChar('c:\'),nil, 0, @VolumeSerialNumber,MaximumComponentLength, FileSystemFlags,nil, 0);
result:= IntToHex(HiWord(VolumeSerialNumber), 4) + '-' + IntToHex(LoWord(VolumeSerialNumber), 4);
except
end;
end;
function get_date:tdatetime;stdcall;
begin
result:=strtodate('2006-1-1');
end;
function get_regsn:string;stdcall;
var
str1,str2,str3:string;
i,j,s:integer;
begin
str1:=Get_Serial;
str2:='';
str3:='0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
for i:=1 to 20 do
begin
s:=0;
for j:=1 to length(str1) do
begin
s:=s+ord(str1[j])*i;
end;
s:=(s mod 62)+1;
str2:=str2+str3[s];
end;
result:=str2;
end;
function get_pass(password:string): boolean; stdcall;
begin
if password=get_regsn then
result:=true
else
result:=false;
end;
function get_serial:string;stdcall;
var
str2,str3:string;
i,j,s:integer;
begin
str2:='';
str3:='0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
for i:=1 to 20 do
begin
s:=0;
for j:=1 to length(Get_SerialNo) do
begin
s:=s+ord(Get_SerialNo[j])*i;
end;
s:=(s mod 62)+1;
str2:=str2+str3[s];
end;
result:=str2;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -