未解析的外部函数IBM Websphere MQ

C++ Unresolved external function IBM Websphere MQ

本文关键字:IBM Websphere MQ 函数 外部      更新时间:2023-10-16

我正在使用IBM Websphere MQ库imqb23vn。Lib和imqs23vn。Lib在Visual Studio 2010中构建64位c++应用程序。

我已经从IBM下载了64位版本的库,并将它们放入lib目录中。

我引用了附加库目录下的链接器属性中的目录。在链接器->输入下,我在附加依赖项下包含了这两个库。

当我编译应用程序时,我得到了一堆链接错误LNK2001:未解析的外部符号"public: static inc __cdecl ImqMgr::behavior(void)

我在一个新的Windows 2008 64位服务器上设置这个。该应用程序在当前32位Windows 2003服务器环境下编译并运行了9年。

这是事实。你的链接器找不到库。检查您使用的是64位库及其路径,而不是32位版本。

你先说:

我正在使用IBM Websphere MQ库imqb23vn。Lib和imqs23vn。自由,在Visual Studio 2010中构建64位c++应用程序

那么你说:

我在一个新的Windows 2008 64位服务器上设置这个。的应用程序编译并在当前32位运行了9年Windows 2003服务器环境

您正在构建32位还是64位应用程序?此外,IBM在这9年中对接口进行了更改——听起来就像您在使用MQ v5.3。

我正在使用MS VS 2010,构建32位和64位应用程序没有任何问题。您是否在项目中设置了查找MQ库的位置?

。对于默认安装的WMQ v7.5:

32位MQ库位于:C:Program Files (x86)IBMWebSphere MQToolsLib

64位MQ库位于:C:Program Files (x86)IBMWebSphere MQToolsLib64