我有一个Visual C ++ DLL项目(只是一个项目,没有父解决方案),需要构建DLL。
构建命令不会生成任何错误消息。在Debug文件夹中有mylibrary.lib
,但没有mylibrary.dll
。
我看了Visual Studio 2010 C++ DLL project - No output DLL file!,但我的情况与那个问题不同。在构建输出中,没有像
这样的消息MFCInterop.vcxproj - > C:\ TEMP \ sotest \调试\ MFCInterop.dll
仅
MFCInterop.vcxproj - > C:\ TEMP \ sotest \调试\ MFCInterop.lib
如何生成DLL文件?
答案 0 :(得分:5)
我可能是dll生成但不在Debug文件夹中。你应该为项目设置输出目录。为此转到
项目属性--->一般--->输出目录--->。\ Debug
答案 1 :(得分:1)
如果您的DLL没有暴露任何内容,可能会发生这种情况。 通常,应使用以下构造公开DLL的公共API类:
#ifdef YOUR_DLL_EXPORTS
#define YOUR_API __declspec(dllexport)
#else
#define YOUR_API __declspec(dllimport)
#endif
class YOUR_API ClassToExpose {};
然后你必须在DLL项目中定义YOUR_DLL_EXPORTS。 如果你没有暴露的东西DLL没有生成。我希望这会有所帮助。