dll中的代碼如下:
//***********************************************
procedure cj_treeshow(tv1:TTreeView);stdcall;
var
sp1node:TTreenode;
begin
sp1node:=tv1.Items.Add(nil,'信息');
end;exports
cj_treeshow;
begin
end.
//***********************************************
在窗體BM_cjset中調用: 打開BM_cjset代碼:
BM_cjset_frm:=TBM_cjset_frm.Create(Application);
BM_cjset_frm.ShowModal;
FreeandNIl(BM_cjset_frm);
BM_cjset中的代碼如下:
//***********************************************implementation
procedure cj_treeshow(tv1:TTreeView);stdcall;external 'dll\sqlodbc.dll';{$R *.dfm}procedure TBM_cjset_frm.FormShow(Sender: TObject);
var
i:integer;
begin
cj_treeshow(TreeView1);
end;
//***********************************************
可以正常調用,但關閉時提示‘Invalid pointer operation’
怎麼回事啊?
//***********************************************
procedure cj_treeshow(tv1:TTreeView);stdcall;
var
sp1node:TTreenode;
begin
sp1node:=tv1.Items.Add(nil,'信息');
end;exports
cj_treeshow;
begin
end.
//***********************************************
在窗體BM_cjset中調用: 打開BM_cjset代碼:
BM_cjset_frm:=TBM_cjset_frm.Create(Application);
BM_cjset_frm.ShowModal;
FreeandNIl(BM_cjset_frm);
BM_cjset中的代碼如下:
//***********************************************implementation
procedure cj_treeshow(tv1:TTreeView);stdcall;external 'dll\sqlodbc.dll';{$R *.dfm}procedure TBM_cjset_frm.FormShow(Sender: TObject);
var
i:integer;
begin
cj_treeshow(TreeView1);
end;
//***********************************************
可以正常調用,但關閉時提示‘Invalid pointer operation’
怎麼回事啊?
dll中的代碼如下:
//***********************************************
function cj_treeshow(AppHandle:THandle;var tv1:TTreeView;var adoqr_cj:TADOQuery):Boolean;stdcall;
var
sp1node:TTreenode;
begin
Application.Handle:=AppHandle;
sp1node:=tv1.Items.Add(nil,'信息');
cj_treeshow:=true;
end; exports
cj_treeshow;
begin
end.
//***********************************************
在窗體BM_cjset中調用: 打開BM_cjset代碼:
BM_cjset_frm:=TBM_cjset_frm.Create(Application);
BM_cjset_frm.ShowModal;
FreeandNIl(BM_cjset_frm);
BM_cjset中的代碼如下:
//*********************************************** implementation
function cj_treeshow(AppHandle:THandle;var tv1:TTreeView;var adoqr_cj:TADOQuery):Boolean;stdcall;external 'dll\sqlodbc.dll'; {$R *.dfm} procedure TBM_cjset_frm.FormShow(Sender: TObject);
var
i:integer;
begin
cj_treeshow(application.handle,TreeView1,adoqr_cj);
end;
//***********************************************
这样传递参数只能带包运行,