调用dll参数问题(50分)

  • 主题发起人 主题发起人 Gec
  • 开始时间 开始时间
G

Gec

Unregistered / Unconfirmed
GUEST, unregistred user!
scanfile1(@fileorpath, virusname); 就不4机,但是不能发挥此函数功能
scanfile1(pchar(fileorpath), virusname);可能4机器,但可以发挥此函数功能得到回传直
 
调用方式不对,有几种调用方式:stdcall、cdecl、register等等,delphi缺省调用发式是register,VC缺省是cdecl,你首先要确定你的DLL
中的函数的调用方式是上面的哪一种,然后在你的程序中的声明一定要和它一致。例如,如果你的dll是vc写的并且没改缺省的调用发式,那么
你的Delphi程序的声明是: "function scanfile1(参数...):返回值;cdecl;external 动态库名"
 
参数是什么类型的。
发给我看看好吗?
Nizvoo@etang.com
 
wangjiachun:与vc的调用方式为:stdcall吧
Gec,对于其他的我没有好的建议,我基本上都是delphi与vc之间调用的,对于这两者之间
有时挺别扭的。
WriteDll=function(Pvalue:Pchar;page:Integer):Boolean;stdcall;
对于fileorpath如果是char型的数组我想还是可以的。
 
能否提供函数原型看看,什么语言写的?有没有例程
 
接受答案了.
 
后退
顶部