📄 splash.pas
字号:
unit Splash;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
jpeg, ExtCtrls, StdCtrls, Registry;
type
TfmSplash = class(TForm)
Panel1: TPanel;
Image1: TImage;
Label1: TLabel;
procedure CreateOdbc;
private
{ Private declarations }
public
{ Public declarations }
end;
var
fmSplash: TfmSplash;
implementation
{$R *.DFM}
procedure TfmSplash.CreateOdbc;
var
registerTemp : TRegistry;
bData : array[ 0..0 ] of byte;
strCurrDir: string;
begin
StrCurrDir:= ExtractFilePath(Application.ExeName);
registerTemp := TRegistry.Create; //建立一个Registry实例
with registerTemp do
begin
RootKey:=HKEY_LOCAL_MACHINE; //设置根键值为HKEY_LOCAL_MACHINE
if OpenKey('Software\ODBC\ODBC.INI\kings',False) then exit;
//找到Software\ODBC\ODBC.INI\ODBC Data Sources
if OpenKey('Software\ODBC\ODBC.INI\ODBC Data Sources',True) then
begin //注册一个DSN名称
WriteString('kings','Microsoft Access Driver (*.mdb)');
end
else
begin//创建键值失败
messageDlg('增加ODBC数据源失败',mtError,[mbOK],0);
exit;
end;
CloseKey;
//找到或创建Software\ODBC\ODBC.INI\kings,写入DSN配置信息
if OpenKey('Software\ODBC\ODBC.INI\kings',True) then
begin
WriteString('DBQ',StrCurrDir+'db1.mdb'); //数据库目录
WriteString('Description','我的新数据源'); //数据源描述
WriteString('Driver','C:\winnt\SYSTEM32\odbcjt32.dll'); //驱动程序DLL文件
WriteInteger('DriverId', 25 ); //驱动程序标识
WriteString('FIL','Ms Access;'); //Filter依据
WriteInteger('SafeTransaction', 0 ); //支持的事务操作数目
WriteString('UID',' '); //用户名称
bData[0] := 0;
WriteBinaryData('Exclusive', bData,1); //非独占方式
WriteBinaryData('ReadOnly', bData,1); //非只读方式
end
else//创建键值失败
begin
MessageDlg('增加ODBC数据源失败', mtError, [mbOK], 0 );
exit;
end;
CloseKey;
//找到或创建Software\ODBC\ODBC.INI\MyAccess\Engines\Jet
//写入DSN数据库引擎配置信息
if OpenKey('Software\ODBC\ODBC.INI\kings\Engines\Jet',True) then
begin
WriteString('ImplicitCommitSync' , 'Yes' ) ;
WriteInteger('MaxBufferSize' , 512 ) ; //缓冲区大小
WriteInteger('PageTimeout' , 10 ) ; //页超时
WriteInteger('Threads' , 3 ) ; //支持的线程数目
WriteString('UserCommitSync' , 'Yes') ;
end
else//创建键值失败
begin
messagedlg('增加ODBC数据源失败',mtError,[mbOK],0);
exit;
end;
CloseKey;
//Messagedlg('增加新ODBC数据源成功',mtError,[mbOK],0);
Free;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -