c++ - 将应用程序转换为使用 DLL 时的 LNK2019

标签 c++ dll visual-studio-2005 linker

(为清楚起见重写)

我有一个多项目解决方案,我希望将其从使用 .lib 文件转换为 .DLL 文件。我已经创建了我的 __declspec 宏并将其应用于每个类,但项目中创建最终 .exe 的那些除外。然而,链接器几乎适用于所有内容。我已设置为忽略有关导出模板化对象的错误。

一个例子是这样的:

error LNK2019: unresolved external symbol "__declspec(dllimport) public: void __thiscall Rail::SetNextRail(class Rail *)" (__imp_?SetNextRail@Rail@@QAEXPAV1@@Z) referenced in function "public: static void __cdecl MyUtilities::CreateBezierRails(int,class MyVector *,class std::vector > &)" (?CreateBezierRails@MyUtilities@@SAXHPAVMyVector@@AAV?$vector@PAVRail@@V?$allocator@PAVRail@@@std@@@std@@@Z) MyUtilities.obj

我的 __declspec(dllimport) 上未解析的外部符号?这似乎不对。它由一个宏放置,例如:

#ifdef MYAI_EXPORT
#define DECLSPECAI __declspec(dllexport)
#else
#define DECLSPECAI __declspec(dllimport)
#endif

基本上,是什么给了?为什么会出现这些错误以及如何修复它们?感谢迄今为止所有尝试提供帮助的人,但我仍然坚持这一点。

最佳答案

您是否链接到 MyRenderer.lib?

关于c++ - 将应用程序转换为使用 DLL 时的 LNK2019,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1566895/

相关文章:

python - 我可以使用 VS2005 为使用 VS2003 构建的 Python 系统构建扩展吗

c++ - vc++如何在多个进程中加载​​单个DLL

c++ - Qt:像Eclipse一样拖放Widget实现任意布局(拆分)

c++ - LLVM 字符串值对象 : How can I retrieve the String from a Value?

c++ - 如何为单元测试生成文件打开失败

c# - 在 Windows Phone 8.1 模块 System.dll 中找不到类型 System.ComponentModel.TypeConverter

java - 当我不能时,Maven 正在执行什么样的魔法来运行这个项目?

c++ - 何时以及为何会生成 std​​::__non_rtti_object 异常?

c++ - 使用堆调试 MS VC++ 2005

c++ - 打印一个精度为 double 的值