?? odbc.txt
字號:
{*******************************************************
在本程序中,將創(chuàng)建一個ODBC系統(tǒng)數(shù)據(jù)源(DSN),
數(shù)據(jù)源名稱:jygl 數(shù)據(jù)源描述:武警加油13:24 2001-5-17
數(shù)據(jù)庫類型: ACCESS97
對應(yīng)數(shù)據(jù)庫:C:\Program Files\武警部隊IC卡加油管理子系統(tǒng)\main.mdb
*******************************************************}
{ 注意應(yīng)在USES語句中包含Registry }
procedure TFrmSetup.OutlookBtnODBCClick(Sender: TObject);
var
registerTemp : TRegistry;
bData : array[ 0..0 ] of byte;
begin
registerTemp := TRegistry.Create; //建立一個Registry實例
with registerTemp do
begin
RootKey:=HKEY_LOCAL_MACHINE;//設(shè)置根鍵值為HKEY_LOCAL_MACHINE
//找到Software\ODBC\ODBC.INI\ODBC Data Sources
if OpenKey('Software\ODBC\ODBC.INI\ODBC Data Sources',True) then
begin //注冊一個DSN名稱
WriteString( 'jygl', 'Microsoft Access Driver (*.mdb)' );
end
else
begin//創(chuàng)建鍵值失敗
ShowMessage('建立ODBC數(shù)據(jù)源失敗');
exit;
end;
CloseKey;
//找到或創(chuàng)建Software\ODBC\ODBC.INI\jygl,寫入DSN配置信息
if OpenKey('Software\ODBC\ODBC.INI\jygl',True) then
begin
WriteString( 'DBQ', frmmain.RunPath + '\main.mdb' );//數(shù)據(jù)庫目錄
WriteString( 'Description', '武警加油' );//數(shù)據(jù)源描述
WriteString( 'Driver', 'C:\WINNT\SYSTEM32\odbcjt32.dll' );//驅(qū)動程序DLL文件
WriteInteger( 'DriverId', 25 );//驅(qū)動程序標(biāo)識
WriteString( 'FIL', 'Ms Access;' );//Filter依據(jù)
WriteInteger( 'SafeTransaction', 0 );//支持的事務(wù)操作數(shù)目
WriteString( 'UID', '' );//用戶名稱
bData[0] := 0;
WriteBinaryData( 'Exclusive', bData, 1 );//非獨占方式
WriteBinaryData( 'ReadOnly', bData, 1 );//非只讀方式
end
else//創(chuàng)建鍵值失敗
begin
ShowMessage('建立ODBC數(shù)據(jù)源失敗');
exit;
end;
CloseKey;
//找到或創(chuàng)建Software\ODBC\ODBC.INI\MyAccess\Engines\Jet
//寫入DSN數(shù)據(jù)庫引擎配置信息
if OpenKey('Software\ODBC\ODBC.INI\jygl\Engines\Jet',True) then
begin
WriteString( 'ImplicitCommitSync', 'Yes' );
WriteInteger( 'MaxBufferSize', 512 );//緩沖區(qū)大小
WriteInteger( 'PageTimeout', 10 );//頁超時
WriteInteger( 'Threads', 3 );//支持的線程數(shù)目
WriteString( 'UserCommitSync', 'Yes' );
end
else//創(chuàng)建鍵值失敗
begin
ShowMessage('建立ODBC數(shù)據(jù)源失敗');
exit;
end;
CloseKey;
//建立SQL
RootKey:=HKEY_LOCAL_MACHINE;//設(shè)置根鍵值為HKEY_LOCAL_MACHINE
//找到Software\ODBC\ODBC.INI\ODBC Data Sources
if OpenKey('Software\ODBC\ODBC.INI\ODBC Data Sources',True) then
begin //注冊一個DSN名稱
WriteString( 'wjoil', 'SQL Server' );
end
else
begin//創(chuàng)建鍵值失敗
ShowMessage('建立ODBC數(shù)據(jù)源失敗');
exit;
end;
CloseKey;
//找到或創(chuàng)建Software\ODBC\ODBC.INI\jygl,寫入DSN配置信息
if OpenKey('Software\ODBC\ODBC.INI\wjoil',True) then
begin
//WriteString( 'DBQ', 'd:\\main.mdb' );//數(shù)據(jù)庫目錄
WriteString( 'Database', 'wjoil'); //數(shù)據(jù)源表名
WriteString( 'Description', '武警指標(biāo)管理' );//數(shù)據(jù)源描述
WriteString( 'Driver', 'C:\WINNT\SYSTEM32\SQLSRV32.dll' );//驅(qū)動程序DLL文件
WriteString( 'LastUser', 'sa' ); //上次使用者名稱
WriteString( 'Server', 'BILLY' ); //服務(wù)器
end
else//創(chuàng)建鍵值失敗
begin
ShowMessage('建立ODBC數(shù)據(jù)源失敗');
exit;
end;
CloseKey;
ShowMessage('建立ODBC數(shù)據(jù)源成功');
Free;
end;
end;
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -