我正在尝试使用.net和MQ客户端v8.0.0.5连接到IBM消息队列,但我一直收到以下错误:
致命错误。无法初始化XMSFactoryFactory
无法加载文件或程序集'IBM.XMS.Client.Impl,Version = 8.0.0.5, Culture = neutral,PublicKeyToken = d2666ab12fca862b'或其中一个 依赖。
系统无法找到该文件 指定。“:”IBM.XMS.Client.Impl,Version = 8.0.0.5,Culture = neutral, 公钥= d2666ab12fca862b
这是我到目前为止所做的:
现在我的机器上也安装了v7.5.0版本,连接到队列时没有问题。
我注意到的另一件事是GAC中没有v8.0.0.5的程序集,但是存在v7.5.0.4的程序集。这可能是原因吗?
不幸的是,在两个版本都正常工作之前,我无法删除v7.5.0。
答案 0 :(得分:2)
是的,MQ v8.0.0.5 XMS .NET程序集不在GAC中很可能是原因。
您可以查看使用重定向的替代方法,更新app.config文件以使用应用程序所需的正确版本的程序集。查看MQ安装目录中的NonPrimaryRedirect.config
文件。此文件包含应用程序查找特定版本的MQ / XMS .NET程序集所需的示例配置。将此文件的内容复制到应用程序的app.config文件中并尝试。您必须确保所有href
属性指向正确的路径。