近期有个需求,要生成一个dll 文件。文件里的函数都是採用 stdcall 函数调用约定,可是不希望函数名被修饰(add 被修饰成 [email protected])。
这时就要用def 文件了。
比方我有以下两个函数:
extern "C" int _stdcall add(int a, int b) { return a + b; } extern "C" int _stdcall sub(int a, int b) { return a - b; }
def 文件(我命名为dll.def)能够这样写:
LIBRARY add_sub EXPORTS add sub
VC6 来编译的话非常easy。仅仅要把 dll.def 文件增加到project里就能够了,但是到了vs2010 ,发现这样做居然没用。生成的 dll 依旧是啥都没导出来。百度了一下。发现须要自己指定
Module Definition file。
时间: 2024-12-24 20:49:39