COM高手进 ( 积分: 100 )

  • 主题发起人 主题发起人 xt2002xt
  • 开始时间 开始时间
X

xt2002xt

Unregistered / Unconfirmed
GUEST, unregistred user!
uses
Windows, ActiveX, Classes, ComObj, check_TLB, StdVcl, strutils, SysUtils, DB, ADODB;

type
TMyCheck = class(TTypedComObject, IMyCheck)
protected
dataConnection: TADOConnection;
function creatdatapath(const datapath: WideString): HResult
stdcall;
end;

function TMyCheck.creatdatapath(const datapath: WideString): HResult;
begin
with dataConnection do
begin
Connected:=false;
loginprompt:=false;
ConnectionString:='Provider=MSDASQL.1;Persist Security Info=False;Data Source=MS Access Database;Initial Catalog='+datapath;
Connected:=true;
end

end;

我建立了这么个COM,希望将TADOConnection等ADO控件都放在一起让所有的自己编的程序调用,为什么不可以?只要是有给TADOConnection赋值就出错,这是什么原因?高手能告诉我答案吗?是我的想法错还是实现错!谢谢!
 
uses
Windows, ActiveX, Classes, ComObj, check_TLB, StdVcl, strutils, SysUtils, DB, ADODB;

type
TMyCheck = class(TTypedComObject, IMyCheck)
protected
dataConnection: TADOConnection;
function creatdatapath(const datapath: WideString): HResult
stdcall;
end;

function TMyCheck.creatdatapath(const datapath: WideString): HResult;
begin
with dataConnection do
begin
Connected:=false;
loginprompt:=false;
ConnectionString:='Provider=MSDASQL.1;Persist Security Info=False;Data Source=MS Access Database;Initial Catalog='+datapath;
Connected:=true;
end

end;

我建立了这么个COM,希望将TADOConnection等ADO控件都放在一起让所有的自己编的程序调用,为什么不可以?只要是有给TADOConnection赋值就出错,这是什么原因?高手能告诉我答案吗?是我的想法错还是实现错!谢谢!
 
你的 dataConnection: TADOConnection
这个东西没有create
 
先创建dataConnection,然后在使用这个COM的ADOConnection时,用指针传给需要使用它的程序。
 
谢谢,是这个问题,研究成功,后面还有问题,请继续帮帮我!先接这个分
 
后退
顶部