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

📄 databaseclient_unit.pas

📁 学校班级教学管理系统 DELPHI7下的
💻 PAS
字号:
unit DataBaseClient_Unit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons;

type
  TfrmDataBaseClient = class(TForm)
    Label1: TLabel;
    btnViewPath: TBitBtn;
    btnOk: TBitBtn;
    OpenPath: TOpenDialog;
    edtDataBasePath: TEdit;
    procedure btnViewPathClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure btnOkClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmDataBaseClient: TfrmDataBaseClient;

implementation
uses
  Common_Unit, TeachMain_Unit, Login_Unit, DM_Unit;
{$R *.dfm}

procedure TfrmDataBaseClient.btnViewPathClick(Sender: TObject);
begin
  if OpenPath.Execute then
    edtDataBasePath.Text := OpenPath.FileName;
end;

procedure TfrmDataBaseClient.FormShow(Sender: TObject);
begin
  edtDataBasePath.Text := DBConFileName(FileName);
end;

procedure TfrmDataBaseClient.btnOkClick(Sender: TObject);
begin
  if edtDataBasePath.Text = '' then
  begin
    Application.MessageBox('请选择数据库路径!','错误',16);
    edtDataBasePath.SetFocus;
    Exit;
  end;

  try
    DM.ADOConn.Close;
    DM.ADOConn.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;'       //打开数据库的连接
                              + 'Data Source=' + edtDataBasePath.Text
                              + ';Persist Security Info=False';
    DM.ADOConn.Open;
  except
    Application.MessageBox('数据库连接失败!','错误',16);
    Exit;
  end;

  try                                               //动态加载DLL,DLL中包含了读取INI文件的函数
    DLLHand := LoadLibrary('CommInfo.dll');
    @WriteIni := GetProcAddress(DLLHand,'WriteIni');
    if @ReadIni <> nil then
      WriteIni(FileName,'BDConn','DBConFileName',edtDataBasePath.Text);
    Application.MessageBox('数据连接成功,请重新启动程序!','提示',64);
    Application.Terminate;
  finally
    FreeLibrary(DLLHand);  //释放DLL
  end;
end;

procedure TfrmDataBaseClient.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  if Assigned(frmLogin) then     //判断是否有主程序实例,如果没有关闭整个程序
    Close                            //如果有,只关闭当前窗体
  else
    Application.Terminate ;
end;

end.

⌨️ 快捷键说明

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