关于调用DLL中的函数,出现问题

肥仔胧 2006-03-19 12:23:01
以上函数写在exe文件中然后再调用,可以实现效果
然后写在Dll中,再调用则失效
何解?

procedure SetDataGridFootType(DataGrid: TDBGridEh;
FFieldName: PChar; FType: TFooterValueType);
begin
with DataGrid do
begin
FooterRowCount:=1;
if not SumList.Active then SumList.Active:=true;
if FindColumn(FFieldName)<>nil then
FieldColumns[FFieldName].Footer.ValueType:=fvtSum;
end;
end;
...全文
216 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
肥仔胧 2006-03-21
  • 打赏
  • 举报
回复
人气不行啊,这里
肥仔胧 2006-03-20
  • 打赏
  • 举报
回复
up
肥仔胧 2006-03-20
  • 打赏
  • 举报
回复
很明显,你在dll中的声明不对,或者调用方式有问题
我在DLL中的声明是这样的:
procedure SetAColValueType(DataGrid: TDBGridEh; ColName: PChar; FooterValueType: TFooterValueType); stdcall; //设置指dbgrid指定列footer类型

然后在exe中声明如下:
procedure SetAColValueType(DataGrid: TDBGridEh; ColName: PChar; FooterValueType: TFooterValueType); stdcall; External 'PIniFiles.dll'; //设置指dbgrid指定列footer类型


就直接调用?请问大大哥们,我这样写法哪里错了?
chijingde 2006-03-20
  • 打赏
  • 举报
回复
以上函数写在exe文件中然后再调用,可以实现效果
然后写在Dll中,再调用则失效
何解?



很明显,你在dll中的声明不对,或者调用方式有问题
肥仔胧 2006-03-20
  • 打赏
  • 举报
回复
没人理会我啊!!!
肥仔胧 2006-03-20
  • 打赏
  • 举报
回复
早就uses Activex了,有没有人有这方面的经验,相互探讨一下,谢谢
肥仔胧 2006-03-19
  • 打赏
  • 举报
回复
delphi的啊,vb的有DBGridEh吗?怎么看也不像VB吧
BKgHost 2006-03-19
  • 打赏
  • 举报
回复
大虾,你这是VB吧?
slzzg 2006-03-19
  • 打赏
  • 举报
回复
TDBGridEh是组件
你在调用该函数的文件首+ uses Activex;试试
肥仔胧 2006-03-19
  • 打赏
  • 举报
回复
up

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧