📄 reg_un.pas
字号:
unit reg_un;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,ComObj, StdCtrls, regware4,inifiles, ExtCtrls;
type
Treg_frm = class(TForm)
Panel1: TPanel;
Label4: TLabel;
Label5: TLabel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
DaysLeftLabel: TLabel;
TimeLimitLabel: TLabel;
StatusLabel: TLabel;
Label13: TLabel;
Label12: TLabel;
Button1: TButton;
RegCodeBox: TEdit;
LicenseIDBox: TEdit;
DoRegistrationBtn: TButton;
OrganizationBox: TEdit;
EmailBox: TEdit;
reg: TRegware4;
Label7: TLabel;
Edit1: TEdit;
Panel2: TPanel;
Label6: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label14: TLabel;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure DoRegistrationBtnClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Panel2Click(Sender: TObject);
procedure Label6Click(Sender: TObject);
private
{ Private declarations }
public
procedure ShowStatus ;
{ Public declarations }
end;
var
reg_frm: Treg_frm;
implementation
{$R *.dfm}
procedure Treg_frm.ShowStatus;
var inifile1:TIniFile;
s:string;
begin
TimeLimitLabel.Caption := IntToStr(Reg.Days);
DaysLeftLabel.Caption := IntToStr(Reg.DaysLeft);
IniFile1 := TIniFile.Create (ExtractFilePath (Application.ExeName) + 'set.ini'); //创建一个INI文件
s:=inifile1.ReadString('ProgGuid','value',s);
IniFile1.free;
if Trim(s)<>'' then
reg.ProgGUID:=Trim(s);
reg.Reload;
//reg.Reload;
//if reg.CheckRegistered then ShowMessage('sdf');
if Reg.Registered then
begin
StatusLabel.Caption := '已经注册';
LicenseIDBox.Text := Reg.LicenseID;
OrganizationBox.Text := Reg.Organization;
EmailBox.Text := Reg.Email;
RegCodeBox.Text := Reg.RegCode;
Panel2.Visible:=true;
Panel2.Align:= alClient;
Panel1.Visible:=false;
end else
begin
if Reg.Expired then StatusLabel.Caption := '软件已经过期' else
StatusLabel.Caption := '软件没有注册';
LicenseIDBox.Text := '';
OrganizationBox.Text := '';
EmailBox.Text := '';
RegCodeBox.Text := '';
Panel1.Visible:=true;
Panel1.Align:= alClient;
Panel2.Visible:=false;
end;
end;
procedure Treg_frm.FormCreate(Sender: TObject);
var inifile1:TIniFile;
s:string;
begin
try
IniFile1 := TIniFile.Create (ExtractFilePath (Application.ExeName) + 'set.ini'); //创建一个INI文件
s:=inifile1.ReadString('ProgGuid','value',s);
IniFile1.free;
if Trim(s)='' then
begin
s:=CreateClassID;
IniFile1 := TIniFile.Create (ExtractFilePath (Application.ExeName) + 'set.ini'); //创建一个INI文件
inifile1.WriteString('ProgGUID','value',s);
IniFile1.free;
end
except
end;
reg.ProgGUID:=s;
Edit1.Text:= reg.ProgGUID;
end;
procedure Treg_frm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
// if not Reg.Registered then
// ShowMessage('Program is not registered, you may show a reminder screen to register here.');
end;
procedure Treg_frm.DoRegistrationBtnClick(Sender: TObject);
begin
if Reg.DoRegistration(LicenseIDBox.Text, OrganizationBox.Text, RegCodeBox.Text, EmailBox.Text) = false then
ShowMessage('注册没有成功!!!!')
else
ShowMessage('注册成功!!');
ShowStatus;
end;
procedure Treg_frm.FormShow(Sender: TObject);
begin
if not Reg.Registered then
begin
DoRegistrationBtn.Enabled:=true;
//if Reg.Expired then
// DoRegistrationBtn.Enabled:=true;
// ShowMessage('Program has expired, you can insert to code exit the program here')
// else
// ShowMessage('Program is not registered, you may show a reminder screen to register here.');
end;
ShowStatus;
end;
procedure Treg_frm.Button1Click(Sender: TObject);
begin
close;
end;
procedure Treg_frm.Panel2Click(Sender: TObject);
begin
close;
end;
procedure Treg_frm.Label6Click(Sender: TObject);
begin
close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -