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

📄 data.~pas

📁 漳大图书馆管理系统利用Delphi6.0和MS Server2000为主要开发工具
💻 ~PAS
字号:
unit data;

interface

uses
  SysUtils, Classes, DB, DBClient, MConnect, SConnect,dialogs
  ,registry,windows; //修改注册表要用的两个单元

type
  Tfm_data = class(TDataModule)
    Socket: TSocketConnection;
    data_book: TDataSource;
    Cd_borrow: TClientDataSet;
    Cd_card: TClientDataSet;
    Cd_login: TClientDataSet;
    Cd_student: TClientDataSet;
    Cd_users: TClientDataSet;
    data_borrow: TDataSource;
    data_card: TDataSource;
    data_login: TDataSource;
    data_student: TDataSource;
    Data_users: TDataSource;
    Cd_book: TClientDataSet;
    procedure DataModuleCreate(Sender: TObject);
  private
    function connect_app:boolean;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  fm_data: Tfm_data;

implementation

uses connect, main;

{$R *.dfm}

function TFm_data.connect_app: boolean;   //通过注册表的记录判断是否连接上了应用服务器
var
  vs_Host, vs_Address, vs_Port: string;
  reg: TRegistry;
begin
  Result := True;
  reg := Tregistry.create;
  Reg.RootKey := HKEY_LOCAL_MACHINE;
  socket.Connected := false;
  //读取注册表配置的应用服务器信息
  if Reg.OpenKey('\Software\pz', False) then  //如果注册表有信息
  begin
    vs_Host := reg.ReadString('Host');
    vs_Address := reg.ReadString('ip');
    vs_Port := reg.readstring('Port');
    try
      //测试连接
        socket.Address := vs_Address;
        socket.Host := vs_Host;
        socket.Port := strtoint(vs_Port);
        socket.Connected := true;
      reg.closekey;
    except //未连接上,弹出配置窗口,重新连接
      reg.closekey;
        try
            fm_SerConfig := Tfm_serconfig.create(self);
            fm_SerConfig.showmodal;
        finally
            fm_SerConfig.free;
        end;
    end;
  end
  else      //如果没有信息 弹出配置窗口
  begin
     try
            fm_SerConfig := Tfm_SerConfig.create(self);
            fm_SerConfig.showmodal;
        finally
            fm_SerConfig.free;
        end;
  end;
end;

procedure Tfm_data.DataModuleCreate(Sender: TObject);
begin
connect_app();   //调用自定义的连接服务器函数
{try
    if not(connect_app()) then
    Fm_main.Close;
except
    Messagedlg('Cannot Connect to Appserver!',mterror,[mbok],0);
    halt;
  end; }
   Cd_book.Active:=true;
 Cd_borrow.Active:=true;
 Cd_card.Active:=true;
 Cd_login.Active:=true;
 Cd_student.Active:=true;
 Cd_users.Active:=true;
end;

end.

⌨️ 快捷键说明

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