怎么调用封装在类中的函数呀(DLL)
class A_API Cchk {
public:
int e_pwd(char *s_pwd, char *s_key1, char *s_key2);//密码加密
int c_chk(char *ps_card_id, char f);//卡号校验
int a_chk(char *ps_acct_id, int e);//帐号校验
Cchk(void);
};
我现在用
function a_chk( pSource:PCHAR; e:integer ): integer;
stdcall;external 'achk.dll';
dll就放在exe同目录,但是就是抱 无法定位程序输入点 呵呵 怎么解?
问题点数:100、回复次数:8Top
1 楼clark_x(feng)回复于 2006-03-17 21:38:53 得分 0
dingTop
2 楼clark_x(feng)回复于 2006-03-17 23:44:17 得分 0
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1783018
我照写,还是不行
function newdll:delphdll cdecl;external 'dll.dll';
怎么调用都报错:无法定位程序输入点newdll于动态链接库dll.dll上
无论我怎样修改这些东西都不通,关键应该是这句话的问题了。后面dll肯定不会写错,newdll是什么东西? delphdll是delphi类,需要和dll的c类名称一样吗?
Top
3 楼clark_x(feng)回复于 2006-03-17 23:44:35 得分 0
再录C的.h
#ifdef A_EXPORTS
#define A_API __declspec(dllexport)
#else
#define A_API __declspec(dllimport)
#endif
// This class is exported from the acctchk.dll
class A_API Cchk {
public:
int e_pwd(char *s_pwd, char *s_key1, char *s_key2);
int c_chk(char *ps_card_id, char g);
int a_chk(char *ps_acct_id, int e);
Cchk(void);
// TODO: add your methods here.
};
extern A_API int nAchk;
A_API int fnAchk(void);Top
4 楼yinran(野花)回复于 2006-03-18 09:41:54 得分 50
upTop
5 楼clark_x(feng)回复于 2006-03-18 09:49:05 得分 0
delphi通过在定义一个包含虚拟方法的类,从而实现dll的对象方法调用
可是我即使把虚拟方法保持和vc++语言中方法顺序一样,还是报错 无法找到程序入口 newdll,从动态连接库.dll中Top
6 楼clark_x(feng)回复于 2006-03-18 10:33:05 得分 0
upTop
7 楼clasj(★知我☆)回复于 2006-03-18 20:03:10 得分 50
你这个类导不出来的,再用C写个dll中转吧。。。Top
8 楼clark_x(feng)回复于 2006-03-19 09:32:11 得分 0
按照一般的调用方法,加一个 index n;就调用成功了,散分Top




