我试图使用.net和MQ客户端v8.0.0.5连接到IBM消息队列,但我不断收到以下错误:XMSFactoryFactory.GetInstance(XMSC.CT_WMQ)返回致命错误:未能初始化XMSFactoryFactory
Fatal error. Failed to initialize XMSFactoryFactory
Could not load file or assembly 'IBM.XMS.Client.Impl, Version=8.0.0.5, Culture=neutral, PublicKeyToken=d2666ab12fca862b' or one of its dependencies.
The system cannot find the file specified.":"IBM.XMS.Client.Impl, Version=8.0.0.5, Culture=neutral, PublicKeyToken=d2666ab12fca862b
这里是我迄今所做的:我的机器上
- 安装MQ客户v8.0.0.5(64)。
- 引用以下组件:
- amqmdnet.dll
- amqmdnsp.dll
- amqmdxcs.dll
- IBM.XMS.dll
- IBM.XMS.Admin.dll
- IBM.XMS .Client.Impl.dll
- IBM.XMS.NLS.dll
- IBM.XMS.Provider.dll
- IBM.XMS.Util.dll
现在我的机器上也安装了版本v7.5.0.4,并且没有连接到队列的问题。
我还注意到,GAC中没有v8.0.0.5的程序集,但v7.5.0.4的程序集存在。这可能是原因吗?
不幸的是,我无法删除v7.5.0.4,直到两个版本都能正常工作。
这是为我做的。一旦我更新了app.config以添加'IBM.XMS.Client.Impl.dll'的文件引用,代码就开始为其他程序集抛出相同的错误。在我逐一添加它们之后,代码开始抛出一个不同的错误,我没有记下来。发布我运行MQ文件夹中的'amqiRegisterdotNet.cmd'以将V8.0.0.5程序集注册到GAC。之后,我收到另一个错误,我通过将程序集“amqmdnet.dll”添加到app.config中解决了这个问题,与我为其他人一样。问题解决了,我现在可以读/写消息到队列中。 – Vishal