MyDll.h:
#ifdef _MYLIB
#define MYLIB extern "C" __declspec(dllexport)
#else
#define MYLIB extern "C" __declspec(dllimport)
#endif
MYLIB int MyFunction();
MyDll.cpp
int MyFunction()
{
return 100;
}
编译通过,VC里调用正常,而VB里错误,因为调用约束不为_stdcall吧?
那我怎样将上面的代码改为_stdcall约束?
注:我不喜欢用.def文件将函数名列出。如果
int WINAPI MyFunction();且在.def中列出了MyFunction。那在VB中可用。
#ifdef _MYLIB
#define MYLIB extern "C" __declspec(dllexport)
#else
#define MYLIB extern "C" __declspec(dllimport)
#endif
MYLIB int MyFunction();
MyDll.cpp
int MyFunction()
{
return 100;
}
编译通过,VC里调用正常,而VB里错误,因为调用约束不为_stdcall吧?
那我怎样将上面的代码改为_stdcall约束?
注:我不喜欢用.def文件将函数名列出。如果
int WINAPI MyFunction();且在.def中列出了MyFunction。那在VB中可用。
MyDll.h:
#ifdef _MYLIB
#define MYLIB extern "C" __declspec(dllexport)
#else
#define MYLIB extern "C" __declspec(dllimport)
#endif
MYLIB int __stdcall MyFunction();MyDll.cpp
MYLIB int __stdcall MyFunction()
{
return 100;
}
在VC工程设置中设置为__stdcall,就可以了.
怎样设置?