我正在尝试在 32 位 C++ 控制台应用程序中使用 VS 2008 在 Windows 上运行开箱即用的 ActiveMQ 示例http://activemq.apache.org/cms/example.html 。
该项目已构建,但是当我运行该程序时,出现异常。
XXXXXX.exe 中 0x768b3e28 处的未处理异常:Microsoft C++ 异常:内存位置 0x0100f880 处的 std::length_error..
当尝试运行一个单独的项目和另一个 3rd 方 DLL (log4CXX) 时,我得到了完全相同的内存地址相同的异常。
路径设置
DLL 文件位于 Windows/System32 以及 Windows/SysWOW64 中。
我已将头文件路径添加到 Configuration Properties > C/C++ > Additional Include Directories。在链接器 > 输入 > 附加依赖项中,我有 ws2_32.lib libapr-1.lib activemq-cpp.lib。在链接器 > 常规 > 附加库目录中,我指定了存在 lib 文件的文件夹的路径。包含 lib 和头文件的路径,我相信这就是构建项目没有问题的原因。