⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 regunit.pas

📁 一套完整的软件保护示例 ├──Check..............软件保护示例 └──KeyGen.............注册机制作示例
💻 PAS
字号:
unit RegUnit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Base64Unit, Registry, DiskSerialUnit;

type
  TRegFrm = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  RegFrm: TRegFrm;

implementation

{$R *.dfm}

procedure TRegFrm.Button1Click(Sender: TObject);
var
  Reg:TRegistry;
begin
  if Edit1.Text='' then
    begin
      MessageBox(Handle,'用户名不能为空!','提示',MB_OK);
      Exit;
    end;
  if Edit3.Text='' then
    begin
      MessageBox(Handle,'注册码不能为空!','提示',MB_OK);
      Exit;
    end;
  Reg:=TRegistry.Create;
  Reg.RootKey:=HKEY_CURRENT_USER;
  //存放注册信息的注册表位置可自己设定
  if Reg.OpenKey('\Software\Pefine',True) then
    begin
      //加密用户名保存到注册表中
      Reg.WriteString('ComSn1',Base64Encryption(Edit1.Text));
      //加密注册码保存到注册表中
      Reg.WriteString('ComSn2',Base64Encryption(Edit3.Text));  
    end;
  Reg.CloseKey;
  Reg.Destroy;
  MessageBox(Handle,'请重新启动软件校验注册码!','提示',MB_OK);
end;

procedure TRegFrm.FormCreate(Sender: TObject);
begin
  //获取硬盘系列号
  Edit2.Text:=GetHddSerial;
end;

procedure TRegFrm.Button2Click(Sender: TObject);
begin
  Close;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -