找不到入口点有以下几种情况:
1、没有注意大小写。
在Win32中,DLL的函数和VB的函数中必须大小写相同。
2、没有声明入口函数。
你需要在DLL的*.def文件中加上入口函数,如:
EXPORTS
SetData @1
GetData @2
这样VB程序就可以访问SetData和GetData函数了。其中@1、@2是这两个函数的引用序号,通常在VB中不使用
3、采用C++编译方式。
在C++中编译函数时会将函数名进行转换,如将DLL中的kk(double k)转换为_kk@8。解决的办法有两种:
(1)如果没有使用C++的类,可以将.cpp文件改名为.c,就不进行这种转换了。
(2)在函数定义前加上extern 'c' ,如:
extern 'c' void _stdcall kk(double k)