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

📄 pdatamodulemain.pas

📁 BarCodePrint条码打印机打印管理
💻 PAS
字号:
unit PDataModuleMain;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ADODB, Db,Registry;

type
  TDataModuleMain = class(TDataModule)
    ADOConnectionBarCode: TADOConnection;
    procedure DataModuleCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  DataModuleMain: TDataModuleMain;

implementation

uses Regist, PPublic;

{$R *.DFM}

procedure TDataModuleMain.DataModuleCreate(Sender: TObject);
var
    Reg:TRegistry;
    DataBaseName,Password,cryptPassword:String;
    SuccessConnected:Boolean;
    sLicense,sHit,SDuration:String;
    nHit:Integer;
begin
    Reg:=Nil;
    SuccessConnected:=False;
    Repeat
    try
        Reg:=TRegistry.Create;
        Reg.RootKey:=HKEY_CURRENT_USER;
        if (Reg.OpenKey('\Software\QDSCM\BarCodePrinter\DataLink',False))=False then
        begin
             Reg.CreateKey('\Software\QDSCM\BarCodePrinter\DataLink');
             Reg.OpenKey('\Software\QDSCM\BarCodePrinter',True);
             Reg.WriteString('Ver','1.0');
             Reg.WriteString('Duration',cipher('Songcm','100'));
             Reg.WriteString('Checker',cipher('Songcm','1'));
             Reg.WriteInteger('Hit',1);
             Reg.WriteString('License','2000');

             Reg.CloseKey;
             Reg.OpenKey('\Software\QDSCM\BarCodePrinter\DataLink',True);
             Reg.WriteString('DataBaseName',ExtractFilePath(Application.ExeName)+'BarCode.mdb');
             Reg.WriteString('PassWord','');
             nHit:=1;
             sHit:='1';
             sDuration:='100';
             DataBaseName:=ExtractFilePath(Application.ExeName)+'BarCode.mdb';
        end
        else
        begin
             DataBaseName:=Reg.ReadString('DataBaseName');
             cryptPassword:=Reg.ReadString('PassWord');
             Password:=Decipher('Songcm',cryptPassword);
             Reg.CloseKey;

             Reg.OpenKey('\Software\QDSCM\BarCodePrinter',True);
             nHit:=Reg.ReadInteger('Hit');
             sHit:=Reg.ReadString('Checker');
             sHit:=Decipher('Songcm',sHit);
             sLicense:=Reg.ReadString('License');
             sDuration:=Reg.ReadString('Duration');
             sDuration:=Decipher('Songcm',sDuration);
        end;

        if sLicense<>'20000829' then
        begin
            if (IntToStr(nHit)<>sHit) or (nHit>StrToInt(sDuration)) then
            begin
                Application.MessageBox('读取系统数据错误!','提示',MB_OK);
                Reg.CloseKey;
                Reg.Free;
                Application.Terminate;
            end;
            Reg.CloseKey;
            Reg.OpenKey('\Software\QDSCM\BarCodePrinter',True);
            Reg.WriteString('Checker',cipher('Songcm',IntTostr(nHit+1)));
            Reg.WriteInteger('Hit',nHit+1);
        end;
        finally
             Reg.CloseKey;
             Reg.Free;
    end;

    ADOConnectionBarCode.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;;Data Source='+DataBaseName+
                ';Jet OLEDB:Database Password='+Password;
    ADOConnectionBarCode.LoginPrompt:=False;
    try
    ADOConnectionBarCode.open;
    SuccessConnected:=True;
    except
    on E: Exception do
    begin
        SuccessConnected:=False;
        ShowMessage(E.Message);
        if Application.MessageBox('数据联接失败,请检查设置是否正常,现在配置连接吗?','网络连接',MB_OKCANCEL + MB_DEFBUTTON1+MB_ICONERROR)<>IDOK then
        begin
            Halt(1);
        end
        else
        begin
            frmRegist:=TfrmRegist.Create(Application);
            frmRegist.Showmodal;
            frmRegist.Free;
        end;
    end;
    end;
    until SuccessConnected;
end;

end.

⌨️ 快捷键说明

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