下面是我写的dll 都编译成功 注: MC_TLCYGLXT 是我程序的数据模块窗口单元
library pubfunc;
uses
SysUtils,ADODB,RzTreeVw,ComCtrls,Classes,
MC_TLCYGLXT in 'MC_TLCYGLXT.pas';
{$R *.res}
procedure Open_TreeNode1(table_name,field,field1,all_type:pchar;tv:TRZtreeview); stdcall;
var
adotmp: TadoQuery;
parentNode,curNode:TTreeNode;
begin
adotmp:=nil;
adotmp:=Tadoquery.Create(adotmp);
adotmp.Connection:=TLCYGLXT.ADOconn ;
tv.Items.Clear ;
parentNode:=tv.Items.AddChild(nil,all_type);
parentNode.ImageIndex:=0;
tv.Items.BeginUpdate ;
with adotmp do
begin
close;
sql.Clear ;
sql.Text:='select '+field+' from '+table_name+' order by '+field1+' desc';
open;
first ;
while not eof do
begin
curNode:=tv.Items.AddChildFirst(parentNode,trim(FieldByName(field).AsString));
curNode.ImageIndex:=1;
curNode.SelectedIndex:=1;
next;
end;
end;
tv.Items.EndUpdate ;
parentNode.Expanded:=true;
end;
exports Open_TreeNode1;
begin
end.下面是我在程序里的静态调用 运行程序时就出现地址错误!
procedure Open_TreeNode1(table_name,field,field1,all_type:pchar;tv:TRZtreeview); stdcall external 'pubfunc.dll';
procedure TSPInfo_manage.BitBtn1Click(Sender: TObject);
begin
Open_TreeNode1('sp_type','type_name','type_id','商品种类',treeview)
end;
library pubfunc;
uses
SysUtils,ADODB,RzTreeVw,ComCtrls,Classes,
MC_TLCYGLXT in 'MC_TLCYGLXT.pas';
{$R *.res}
procedure Open_TreeNode1(table_name,field,field1,all_type:pchar;tv:TRZtreeview); stdcall;
var
adotmp: TadoQuery;
parentNode,curNode:TTreeNode;
begin
adotmp:=nil;
adotmp:=Tadoquery.Create(adotmp);
adotmp.Connection:=TLCYGLXT.ADOconn ;
tv.Items.Clear ;
parentNode:=tv.Items.AddChild(nil,all_type);
parentNode.ImageIndex:=0;
tv.Items.BeginUpdate ;
with adotmp do
begin
close;
sql.Clear ;
sql.Text:='select '+field+' from '+table_name+' order by '+field1+' desc';
open;
first ;
while not eof do
begin
curNode:=tv.Items.AddChildFirst(parentNode,trim(FieldByName(field).AsString));
curNode.ImageIndex:=1;
curNode.SelectedIndex:=1;
next;
end;
end;
tv.Items.EndUpdate ;
parentNode.Expanded:=true;
end;
exports Open_TreeNode1;
begin
end.下面是我在程序里的静态调用 运行程序时就出现地址错误!
procedure Open_TreeNode1(table_name,field,field1,all_type:pchar;tv:TRZtreeview); stdcall external 'pubfunc.dll';
procedure TSPInfo_manage.BitBtn1Click(Sender: TObject);
begin
Open_TreeNode1('sp_type','type_name','type_id','商品种类',treeview)
end;
解决方案 »
- 那个知道报general sql error 已分配了最大的dbprocess这个错误怎么解决
- 使用BDS2006&Turbo Delphi后有话说
- 用ODBC连sybase12.5的问题,急急急急!在线等!
- 如何使查询区分大小写?
- 关于ACTIVEX安全的问题!
- [***sos***]哪位大虾给我讲讲fastreport的demo中memo&picture例子,demo中并没有script怎么实现的?
- 内存影射的问题,喜欢刨根问底的请进!
- 高人请帮忙,delphi 嵌汇编的小问题.(立即给分,不要白不要啊)
- 如何确定某个字串在TStringList的哪一行?
- 请问如何发布在Delphi下用ADO开发的程序?
- dll 封装对象的疑问
- Delphi还有前途吗?
function fxsum(a,b:double):string;stdcall;
begin
result:=floattostr(a+b);
end;
adotmp:=nil;
adotmp:=Tadoquery.Create(adotmp);
改为adotmp:=Tadoquery.Create(nil);试试
[Error] pubfunc.dpr(17): '.' expected but ':=' found
[Error] pubfunc.dpr(17): Missing operator or semicolon