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

📄 srvrdm.pas

📁 关于利用DELPHI来进行企业级方案解决的著作的附书源码
💻 PAS
字号:
unit SrvrDM;


interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ComServ, ComObj, VCLCom, StdVcl, DataBkr, DBClient, Server_TLB,
  Db, DBTables, Provider;

type
  TLoginDemo = class(TRemoteDataModule, ILoginDemo)
    loginProvider: TDataSetProvider;
    Database1: TDatabase;
    Query1: TQuery;
    procedure LoginDemoCreate(Sender: TObject);
    procedure LoginDemoDestroy(Sender: TObject);
  private
    FLoggedIn: Boolean;
    FUserName,FGroup: string;
    FUsedmodel: string;
    procedure CheckLogin;
  protected                
    procedure Login(const UserName, Password,usedmodel: WideString); safecall;
  end;

var
  LoginDemo: TLoginDemo;

implementation

uses SrvrFrm;

{$R *.DFM}

procedure TLoginDemo.CheckLogin;
begin
  if not FLoggedIn then
    raise Exception.Create('Not logged in');
end;

procedure TLoginDemo.Login(const UserName, Password,usedmodel: WideString);
var    tempstr:string;
begin

  with query1 do
  begin
    close;
    sql.clear;
    tempstr:='select a.id,a.name,a.password,a.group_id,b.description  ';
    tempstr:=tempstr+'from jbqk a,user_lev b  ';
    tempstr:=tempstr+'where a.group_id=b.group_id and a.id=''';
    tempstr:=tempstr+UserName+''' and a.password='''+Password+'''';
    sql.add(tempstr);
    open;
  end;
  if not query1.IsEmpty then
  begin
    FUserName := UserName+'-'+query1.fieldbyname('name').value;
    FGroup:=query1.fieldbyname('description').value;
    FLoggedIn := True;
    FUsedmodel :=Usedmodel;
    Form1.ListBox1.Items.Add(FUserName);
    Form1.memo1.lines.Add('['+datetimetostr(now)+']'+FGroup+':'+FUserName+'进入'+Fusedmodel);
  end
  else
  begin
    FLoggedIn := false;
    Form1.memo1.lines.Add('['+datetimetostr(now)+']'+FGroup+':'+FUserName+'非法进入'+Fusedmodel);
  end;
end;

procedure TLoginDemo.LoginDemoCreate(Sender: TObject);
begin
  FLoggedIn := False;

end;

procedure TLoginDemo.LoginDemoDestroy(Sender: TObject);
begin
  { Remove the Name from the list}
  with Form1.ListBox1.Items do Delete(IndexOf(FUserName));
  Form1.memo1.lines.Add('['+datetimetostr(now)+']'+FGroup+':'+FUserName+'离开'+Fusedmodel);
end;

initialization
  TComponentFactory.Create(ComServer, TLoginDemo,
    Class_LoginDemo, ciMultiInstance, tmSingle);
end.

⌨️ 快捷键说明

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