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

📄 unitdemo.pas

📁 基于U盘的软件授权组件
💻 PAS
字号:
unit UnitDemo;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, OleServer, USBPass_TLB, USBPassR_TLB;

type
  TfrmDemo = class(TForm)
    BtWrite: TButton;
    BtReadA: TButton;
    BtChangePassWD: TButton;
    BtClear: TButton;
    BtAbout: TButton;
    BtClearWindows: TButton;
    BtExit: TButton;
    BtReadB: TButton;
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    uPassMain: TuPassMain;
    uPassRead: TuPassRead;
    procedure BtExitClick(Sender: TObject);
    procedure BtWriteClick(Sender: TObject);
    procedure BtClearWindowsClick(Sender: TObject);
    procedure BtAboutClick(Sender: TObject);
    procedure BtClearClick(Sender: TObject);
    procedure BtChangePassWDClick(Sender: TObject);
    procedure BtReadBClick(Sender: TObject);
    procedure BtReadAClick(Sender: TObject);
  private
    function ShowInfo: boolean;
    function ShowInfoRead: boolean;
    function BooleanToStr(Bool: boolean): string;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmDemo: TfrmDemo;

implementation

uses UnitDialog;

{$R *.dfm}

procedure TfrmDemo.BtExitClick(Sender: TObject);
begin
   self.Close;
end;

procedure TfrmDemo.BtWriteClick(Sender: TObject);
var
   strPass_WD:WideString;
   strMsg:string;
begin
   frmdialog.Caption :='请输入密码';
   frmdialog.EditPassWD.Text :='';
   if frmdialog.ShowModal =mrOk then
   begin
        BtClearWindowsClick(nil);
        strpass_wd:=trim(frmdialog.EditPassWD.Text );
        if uPassMain.PassCreate(strpass_WD) then
        begin
           ShowInfo;
        end;
        strmsg:=upassmain.TBack_MsgStr ;
        ShowMessage(strmsg);
   end;
end;
 
function TfrmDemo.ShowInfo:boolean;
begin
   Label1.Caption:='USB磁盘驱动器   :'+Upassmain.TBack_DiskName ;
   Label2.Caption:='USBPass授权编号 :'+Upassmain.TBack_DrvKeyNumber ;
   Label3.Caption:='授权写入时间    :'+datetimetostr(Upassmain.TBack_RegDate ) ;
   Label4.Caption:='授权软件代码    :'+Upassmain.TBack_SoftCode   ;
   Label5.Caption:='使用单位名称    :'+Upassmain.TBack_UnitName ;
   Label6.Caption:='是否限制使用次数:'+BooleanToStr(Upassmain.TBack_IsTime)  ;
   Label7.Caption:='剩余使用次数    :'+floattostr(Upassmain.TBack_UseTime ) ;
   Label8.Caption:='是否限制使用天数:'+BooleanToStr(Upassmain.TBack_IsFate )  ;
   Label9.Caption:='剩余使用天数    :'+floattostr(Upassmain.TBack_UseFate ) ;
   Label10.Caption:='是否任意条件触发:'+BooleanToStr(Upassmain.TBack_IsAll  )  ;
   Label11.Caption:='最后使用日期    :'+Datetostr(upassmain.TBack_LastDate ) ;
   Label12.Caption:='附加信息        :'+upassmain.TBack_AnnexInfo   ;
end;
function TfrmDemo.ShowInfoRead:boolean;
begin
   Label1.Caption:='USB磁盘驱动器   :'+uPassRead.TBack_DiskName ;
   Label2.Caption:='USBPass授权编号 :'+uPassRead.TBack_DrvKeyNumber ;
   Label3.Caption:='授权写入时间    :'+datetimetostr(uPassRead.TBack_RegDate ) ;
   Label4.Caption:='授权软件代码    :'+uPassRead.TBack_SoftCode   ;
   Label5.Caption:='使用单位名称    :'+uPassRead.TBack_UnitName ;
   Label6.Caption:='是否限制使用次数:'+BooleanToStr(uPassRead.TBack_IsTime) ;
   Label7.Caption:='剩余使用次数    :'+floattostr(uPassRead.TBack_UseTime ) ;
   Label8.Caption:='是否限制使用天数:'+BooleanToStr(uPassRead.TBack_IsFate ) ;
   Label9.Caption:='剩余使用天数    :'+floattostr(uPassRead.TBack_UseFate ) ;
   Label10.Caption:='是否任意条件触发:'+BooleanToStr(uPassRead.TBack_IsAll  )   ;
   Label11.Caption:='最后使用日期    :'+Datetostr(uPassRead.TBack_LastDate ) ;
   Label12.Caption:='附加信息        :'+uPassRead.TBack_AnnexInfo   ;
end;
function TfrmDemo.BooleanToStr(Bool:boolean):string;
begin
    if bool=false then
       Result:='False'
    else
       Result:='True';
end;

procedure TfrmDemo.BtClearWindowsClick(Sender: TObject);
begin
   Label1.Caption:='*';
   Label2.Caption:='*';
   Label3.Caption:='*';
   Label4.Caption:='*';
   Label5.Caption:='*';
   Label6.Caption:='*';
   Label7.Caption:='*';
   Label8.Caption:='*';
   Label9.Caption:='*';
   Label10.Caption:='*';
   Label11.Caption:='*';
   Label12.Caption:='*';
end;

procedure TfrmDemo.BtAboutClick(Sender: TObject);
begin
  Upassmain.PassAbout ;
end;

procedure TfrmDemo.BtClearClick(Sender: TObject);
var
  strmsg:string;
begin
   BtClearWindowsClick(nil);
   upassmain.PassClear;
   strmsg:=upassmain.TBack_MsgStr ;
        ShowMessage(strmsg);
end;

procedure TfrmDemo.BtChangePassWDClick(Sender: TObject);
var
   OLD_PassWD:WideString;
   New_PassWD:WideString;
   strmsg:string;
begin
   frmdialog.Caption :='请输入原来密码';
   frmdialog.EditPassWD.Text :='';
   if  not frmdialog.ShowModal=mrok   then exit;
   OLD_PassWD:=trim(frmdialog.EditPassWD.Text) ;
   frmdialog.Caption :='请输入新密码';
   frmdialog.EditPassWD.Text :='';
   if not frmdialog.ShowModal=mrok  then exit;
   new_PassWD:=trim(frmdialog.EditPassWD.Text) ;
   Upassmain.ChangePassWD(old_passwd,New_passwd);
   strmsg:=upassmain.TBack_MsgStr ;
   ShowMessage(strmsg);
end;
procedure TfrmDemo.BtReadBClick(Sender: TObject);
var
  strMsg:string;
begin
   BtClearWindowsClick(nil);
   if uPassRead.PassRead then
   begin
      ShowInfoRead;
   end;            
   strmsg:=uPassRead.TBack_MsgStr ;
   ShowMessage(strmsg);
end;

procedure TfrmDemo.BtReadAClick(Sender: TObject);
var
   strpass_wd :WideString;
   strMsg:string;
begin
   frmdialog.Caption :='请输入密码';
   frmdialog.EditPassWD.Text :='';
   if frmdialog.ShowModal =mrOk then
   begin
       BtClearWindowsClick(nil);
        strpass_wd:=trim(frmdialog.EditPassWD.Text );
        if uPassMain.PassRead(strpass_wd) then
        begin
           ShowInfo;
        end;
        strmsg:=upassmain.TBack_MsgStr ;
        ShowMessage(strmsg);
   end;
end;

end.

⌨️ 快捷键说明

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