高手指教:远程数据模块如何读取ini文件中的参数来连接数据库 ( 积分: 100 )

  • 主题发起人 主题发起人 sj_lsy
  • 开始时间 开始时间
S

sj_lsy

Unregistered / Unconfirmed
GUEST, unregistred user!
远程数据模块如何读取ini文件中的参数来连接数据库?
试了很久老是不行?烦
 
远程数据模块如何读取ini文件中的参数来连接数据库?
试了很久老是不行?烦
 
可以啊,要在数据模块的DataModuleCreate事件中读取,如何没有指定INI文件的绝对路径的话,INI文件要放在SYSTem32中(也就是DLLHost.EXE所在的目录啦)
 
好像不行啊
 
在TDataBase.OnLogin(TADOConnection.OnWillConnect)调用更好点
节省创建对象的时间,更重要的是,如果连接串有问题,在DataModule.OnCreate建立连接
可能造成灾难性失败。
下面给个例子,直接使用.udl,比ini更省事
建立一个.udl文件,可以可视化建立连接串
当然,只限于ado连接
//获得当前路径
function GetCurDirectory:String;
var
str : array [0..255] of Char;
begin
GetModuleFileName(hInstance,str,SizeOf(str));
result:=ExtractFilePath(StrPas(str));
end;
在ADOConnection.OnWillConnect
procedure TDataCollector.ADOConnection1WillConnect(
Connection: TADOConnection;
var ConnectionString, UserID,
Password: WideString;
var ConnectOptions: TConnectOption;
var EventStatus: TEventStatus);
begin
try
ConnectionString:='FILE NAME='+GetCurDirectory+'dbConnect.udl' ;
except
on E:exceptiondo
begin
raise;
end;
end;
end;

 
为了使TADOConnection.OnWillConnect事件可以触发
要使
TADOConnection.LoginPromt:=true;
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部