我向我的解决方案中添加了一个dll项目,并通过执行项目显式引用了它。 可执行文件抱怨找不到lib文件。
有什么想法可以设置项目以创建所需的lib文件吗? 可能是什么原因导致项目未创建文件?!
干杯
注意事项 我已经搜索了项目,无处创建该文件。
我向我的解决方案中添加了一个dll项目,并通过执行项目显式引用了它。 可执行文件抱怨找不到lib文件。
有什么想法可以设置项目以创建所需的lib文件吗? 可能是什么原因导致项目未创建文件?!
干杯
注意事项 我已经搜索了项目,无处创建该文件。
#ifdef MYAPI_EXPORTS
#define MYAPI_API __declspec(dllexport)
#else
#define MYAPI_API __declspec(dllimport)
#endif
void MYAPI_API foo(int bar);
你希望编译器在构建库时看到dllexport,但在客户端代码包含头文件时看到dllimport。如果Visual Studio生成了基本的项目结构,则可能已经创建了适当的#define可供使用。
您不必同时创建.def文件和添加dllexport,只需选择其中一个即可。我更喜欢后者。另外,如果您选择使用.def文件,则需要在库项目的链接器属性中指定它。
检查构建 DLL 的项目。如果它没有生成 .lib 文件,那么你可能没有告诉它生成。你可以在“属性”->“常规”->“配置类型”中将项目的输出从 DLL 更改为静态库(选择 Static Library .lib)。