提供模块定义(.def)文件 链接器有关于的信息 出口,属性和其他 有关该计划的信息 链接。 .def文件最有用 在构建DLL时。因为有 可以使用的链接器选项 而不是模块定义 语句,.def文件一般 不必要。你也可以使用 __declspec(dllexport)作为指定导出函数的方法。
http://msdn.microsoft.com/en-us/library/28d6s79h%28VS.80%29.aspx
我想知道,我们应该更喜欢 .def 吗?还是 dllexport 方式?
答案 0 :(得分:2)
如果您计划在Visual Basic(而不是VB.NET)中使用DLL的用户,那么您可能希望选择使用.DEF文件。 Visual Basic要求函数使用stdcall调用约定,导出的stdcall函数名称用下划线(_)修饰。您可以通过在.DEF文件中显式指定函数名来覆盖此函数名称修饰。
有关详细信息:http://msdn.microsoft.com/en-us/library/dt232c9t%28VS.90%29.aspx
答案 1 :(得分:2)
模块定义(.def)文件为我们提供了更灵活的定义数据导出方式。
例如,导出的函数可以是匿名的(由序数标识),可以防止没有声明信息的人使用它。
它还可以进行ddo功能转发/重定向,如下所述:
http://msdn.microsoft.com/en-us/library/hyx1zcd3(v=VS.80).aspx