新手求助,如何使用动态链接库?
以前在DELPHI7中用过几次,现在改用DELPHI2006后,再照以前的写老是出错。
DLL文件中的代码如下:
Function SQLSel(ADOQuery:TADOQuery;SQLStr:string):integer;
begin
with ADOQuery do
begin
close;
SQL.Clear;
SQL.Add(SQLStr);
Open;
end;
result:=0;
end;
我在项目中调用dll文件的方法如下:
Function SQLSel(ADOQuery:TADOQuery;SQLStr:string):integer;External 'sqldll.dll ';
SQLSel(adoquery1, 'select * from abc ');
结果无法编译执行,各位如果用过DELPHI2006,帮忙看看哪出错了,先谢谢了。
[解决办法]
报什么错?
[解决办法]
Function SQLSel(ADOQuery:TADOQuery;SQLStr:string):integer;STDCALL;//压栈方式不可少啊
begin
with ADOQuery do
begin
close;
SQL.Clear;
SQL.Add(SQLStr);
Open;
end;
result:=0;
end;
不知道你的DLL内部有没有加入压栈调用规则?如果没有,会报错的。