DLL
function RdmStr() : WideString;StdCall; //返回数据库连接串
begin
Result :=
'Provider=SQLOLEDB.1;Password=XXX;Persist Security Info=True;User ID=XXX;Initial Catalog=WorkService;Data Source=XXXX;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Use Encryption for Data=False;Tag with column collation when possible=False';
end;
-------------------------
以下是在程序中调用,没有提示错误。可是无法读取数据,请大家帮帮忙.
function RdmStr(): WideString;StdCall;External 'User.dll' name 'RdmStr';Ldm.ADOConnection.Connected := False;
Ldm.ADOConnection.ConnectionString := RdmStr();
Ldm.ADOConnection.Connected := True;
function RdmStr() : WideString;StdCall; //返回数据库连接串
begin
Result :=
'Provider=SQLOLEDB.1;Password=XXX;Persist Security Info=True;User ID=XXX;Initial Catalog=WorkService;Data Source=XXXX;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Use Encryption for Data=False;Tag with column collation when possible=False';
end;
-------------------------
以下是在程序中调用,没有提示错误。可是无法读取数据,请大家帮帮忙.
function RdmStr(): WideString;StdCall;External 'User.dll' name 'RdmStr';Ldm.ADOConnection.Connected := False;
Ldm.ADOConnection.ConnectionString := RdmStr();
Ldm.ADOConnection.Connected := True;
还是不行,而且多了BUG.“invalid pointer operation”
如果用Char在DLL中,根本无法编译.类型不符.
用String我试过,连接成功。可是就取不出数据.
---
To:大家
大家以前是怎样实现的呢?
是动态创建ADOConnection还是只存储连接串.
能不能发个简单的例子给我[email protected]