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

📄 frm_loginserver.pas

📁 这是一个基于delphi平台的物流空运管理系统!
💻 PAS
字号:
unit Frm_LoginServer;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Frm_Cargo, XPMenu, Buttons, EnterAsTab, GIFImage, ExtCtrls,
  THPanel, dxCore, dxButton, StdCtrls, DB, ADODB, Registry;

type
  TFrmLoginServer = class(TFrmCargo)
    Image1: TImage;
    Label1: TLabel;
    Bevel1: TBevel;
    Bevel2: TBevel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    LbODBC: TLabel;
    CmbServerName: TComboBox;
    EdUserName: TEdit;
    EdPassword: TEdit;
    EdDatabaseName: TEdit;
    BtnOK: TdxButton;
    BtnClose: TdxButton;
    DatabaseTest: TADOConnection;
    procedure BtnOKClick(Sender: TObject);
    procedure BtnCloseClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormDestroy(Sender: TObject);
  private
    { Private declarations }
  public
    LoginServer: Boolean; //服务器是否注册成功
    { Public declarations }
  end;

var
  FrmLoginServer: TFrmLoginServer;

implementation

uses Frm_Main;

{$R *.dfm}

procedure TFrmLoginServer.BtnOKClick(Sender: TObject);
var
  ODBC, ServerName, DatabaseName, UserName, Password: string;
  Reg: TRegistry;
  OpenKey: string;
begin
  inherited;
  //检测注册信息
  if trim(CmbServerName.Text) = '' then
  begin
    showmessage('服务器名不得为空!');
    exit;
  end;
  if trim(EdDatabaseName.Text) = '' then
  begin
    showmessage('数据库名不得为空!');
    exit;
  end;
  if trim(EdUserName.Text) = '' then
  begin
    showmessage('用户名不得为空!');
    exit;
  end;
  //得到注册信息
  ODBC := LbODBC.Caption;
  ServerName := trim(CmbServerName.Text);
  DatabaseName := trim(EdDatabaseName.Text);
  UserName := trim(EdUserName.Text);
  Password := trim(EdPassword.Text);
  //注册服务器
  Reg := TRegistry.Create;
  OpenKey := '\Software\ODBC\ODBC.INI\ODBC Data Sources';
  Reg.OpenKey(OpenKey, true);
  Reg.WriteString(ODBC, 'SQL Server');
  Reg.CloseKey;
  OpenKey := '\Software\ODBC\ODBC.INI\' + ODBC;
  Reg.OpenKey(OpenKey, true);
  Reg.WriteString('Server', ServerName);
  Reg.WriteString('Database', DatabaseName);
  Reg.WriteString('LastUser', UserName);
  Reg.WriteString('Driver', 'C:\WINDOWS\System32\SQLSRV32.dll');
  Reg.CloseKey;
  //测试服务器
  if FrmMain.dbconnect(DatabaseTest, ODBC, UserName, Password) = false then
  begin
    showmessage('服务器连接失败,不能注册该服务器!');
    DatabaseTest.Connected := false;
    CmbServerName.SetFocus;
    OpenKey := '\Software\ODBC\ODBC.INI\ODBC Data Sources';
    Reg.OpenKey(OpenKey, false);
    Reg.DeleteValue(ODBC);
    Reg.CloseKey;
    OpenKey := '\Software\ODBC\ODBC.INI';
    Reg.OpenKey(OpenKey, false);
    Reg.DeleteKey(ODBC);
    Reg.CloseKey;
    Reg.Destroy;
    exit;
  end;
  DatabaseTest.Connected := false;
  Reg.Destroy;
  close;
end;

procedure TFrmLoginServer.BtnCloseClick(Sender: TObject);
begin
  inherited;
  close;
end;

procedure TFrmLoginServer.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  inherited;
  Action := caFree;
  FrmLoginServer := nil;
end;

procedure TFrmLoginServer.FormDestroy(Sender: TObject);
begin
  inherited;
  FrmLoginServer := nil;
end;

end.

⌨️ 快捷键说明

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