S
sccphi
Unregistered / Unconfirmed
GUEST, unregistred user!
前面提的问题,没有看见DLL是一个注册DLL,不好意思,实际问题如下:
我很少使用DLL,现在有一个项目需要调用别个公司开发的DLL(DLL名为MstDll.DLL),
DLL需要通过RegSvr32注册,我通过RegSvr32注册后(注册后的类有Mst)
但还发现一些问题,希望各位能指点,最好有源码。谢谢!
在DLL中有如下一些:
function Connect(const connstr: WideString): boolean; //连接一个ORACLE数据库
function setcall(BH:Integer;const TS: IStarstr): Integer; //TS为一个IStarstr的变量,其相应的结构见后面
我调用的代码如下:
var s:variant;
msg:string;
connstr: WideString;
begin
CoInitialize(nil);
s:=CreateOleObject('Mstdll.Mst'); //这句执行成功
connstr:='Provider=MSDAORA.1;Password=xz;User ID=xz123;Data Source=dd;Persist Security Info=True'; //这句连接ORACLE数据库测试也没有错
if s.Connect(connstr) then
showmessage('连接数据库成功');
程序在执行 if s.Connect(connstr) then 这一句时就报“灾难性错误”
这是为什么?
我很少使用DLL,现在有一个项目需要调用别个公司开发的DLL(DLL名为MstDll.DLL),
DLL需要通过RegSvr32注册,我通过RegSvr32注册后(注册后的类有Mst)
但还发现一些问题,希望各位能指点,最好有源码。谢谢!
在DLL中有如下一些:
function Connect(const connstr: WideString): boolean; //连接一个ORACLE数据库
function setcall(BH:Integer;const TS: IStarstr): Integer; //TS为一个IStarstr的变量,其相应的结构见后面
我调用的代码如下:
var s:variant;
msg:string;
connstr: WideString;
begin
CoInitialize(nil);
s:=CreateOleObject('Mstdll.Mst'); //这句执行成功
connstr:='Provider=MSDAORA.1;Password=xz;User ID=xz123;Data Source=dd;Persist Security Info=True'; //这句连接ORACLE数据库测试也没有错
if s.Connect(connstr) then
showmessage('连接数据库成功');
程序在执行 if s.Connect(connstr) then 这一句时就报“灾难性错误”
这是为什么?