📄 set0dbc_unit.pas
字号:
unit Set0DBC_Unit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, INIFiles;
type
TSetODBC_Form = class(TForm)
Button1: TButton;
GroupBox1: TGroupBox;
CheckBox1: TCheckBox;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Label3: TLabel;
Edit3: TEdit;
procedure Button1Click(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
SetODBC_Form: TSetODBC_Form;
const
ODBC_ADD_DSN = 1;
ODBC_CONFIG_DSN = 2;
ODBC_REMOVE_DSN = 3;
ODBC_ADD_SYS_DSN = 4;
ODBC_CONFIG_SYS_DSN = 5;
ODBC_REMOVE_SYS_DSN = 6;
implementation
{$R *.dfm}
function SQLConfigDataSource(
hwndParent: Integer;
fRequest: LongInt;
lpszDriverString: string;
lpszAttributes: string
): LongBool; stdcall; external 'ODBCCP32.DLL';
procedure TSetODBC_Form.Button1Click(Sender: TObject);
begin
IF(SQLConfigDataSource(0,
ODBC_ADD_DSN,//~换成Handle就是手工配置
'SQL Server', //数据库类型
'DSN='+Edit2.text+#0 + //数据源名称
'Server='+Edit1.text+#0 + //SQL Server服务器名
'Database='+Edit3.text+#0 + //数据库名称
'Description=动态配置ODBC'#0 //描述
)) then
ShowMessage('创建ODBC连接成功!')
else
ShowMessage('创建ODBC连接失败!');
end;
procedure TSetODBC_Form.CheckBox1Click(Sender: TObject);
begin
GroupBox1.Visible := CheckBox1.Checked;
end;
procedure TSetODBC_Form.FormShow(Sender: TObject);
begin
CheckBox1.Checked:=true;
GroupBox1.Visible:=true;
end;
procedure TSetODBC_Form.FormCreate(Sender: TObject);
var inifile: TIniFile;
begin
IniFile := TIniFile.Create(extractfilepath(application.ExeName)+'\set.ini');
IniFile.WriteString('配置','测试','OK');
Edit1.Text := IniFile.ReadString('配置','数据库服务器', '');
Edit2.Text := IniFile.ReadString('配置','ODBC 别名', '');
Edit3.Text := IniFile.ReadString('配置','数据库名称', '');
iniFile.Free;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -