如何引用动态连接库中的这个函数:void pascal SendFile(char *chName,int iKind,int iColors,int iScr

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

goodfox2002

Unregistered / Unconfirmed
GUEST, unregistred user!
如何引用动态连接库中的这个函数:void pascal SendFile(char *chName,int iKind,int iColors,int iScrNo,......(200分)<br />请大侠指教如何使用动态连接库中的这个函数
void pascal SendFile(char *chName,int iKind,int iColors,int iScrNo,
int iSpeed,int iDelay,int iStyle,int iLWidth,int iLHeight,bool bAdd);

我是用下面语句:
procedure Sendfile(chName:pchar;iKind,iColors,iScrNo,iSpeed,iDelay,iStyle,iLWidth,iLHeight:integer;bAdd:Boolean)
stdcall external 'comm.dll';
可以编译,可是在运行时系统题是错误:
“无法定位程序输入点sendfile于动态连接库comm.dll上。”

请各位指正。
 
他的意思是在Comm.dll中找不到SendFile这个函数?
可能原因:
1、函数确实没有——好像不可能吧[:D]
2、存在多个comm.dll,在其中一个没有,而这个恰好是被调用的。
解决办法:
1、尽量使Comm.dll只存在一个
2、如果可能,使用index来进行函数调用。
3、俺还没有想好[:D]
 
注意大小写?(猜的)
 
void pascal SendFile(char *chName,int iKind,int iColors,int iScrNo,
int iSpeed,int iDelay,int iStyle,int iLWidth,int iLHeight,bool bAdd);

我是用下面语句:
procedure Sendfile(chName:pchar;iKind,iColors,iScrNo,iSpeed,iDelay,iStyle,iLWidth,iLHeight:integer;bAdd:Boolean)
stdcall external 'comm.dll';

前后调用方式不一样pascal,stdcall,还有Boolean应为BOOL
 
pascal调用就是不区分大小写的。 至于卡色的回答不是你现在遇到的错误。
我同意yzhshi的回答。
 
多人接受答案了。
 
后退
顶部