在不安装MQ客户端的情况下使用XMS Webshere Mq

时间:2018-02-22 07:42:38

标签: ibm-mq

您好我想使用XMS库而不将mq客户端安装到我的本地机器上,但是我收到了这些错误。当我检查ibm功能集时,他们说我们修复它但是怎么样?我也试过8.0.0.7版但是错误是一样的。 http://www-01.ibm.com/support/docview.wss?uid=swg1IC89514

            var factoryfactory = XMSFactoryFactory.GetInstance(XMSC.CT_WMQ);
            var connectionfactory = factoryfactory.CreateConnectionFactory();

            connectionfactory.SetStringProperty(XMSC.WMQ_QUEUE_MANAGER, QueueManagerName);
            connectionfactory.SetStringProperty(XMSC.WMQ_HOST_NAME, HostName);
            connectionfactory.SetIntProperty(XMSC.WMQ_PORT, Port);
            connectionfactory.SetStringProperty(XMSC.WMQ_CHANNEL, channelName);
            connectionfactory.SetIntProperty(XMSC.WMQ_BROKER_VERSION, XMSC.WMQ_BROKER_V2);
            connectionfactory.SetIntProperty(XMSC.WMQ_CONNECTION_MODE, XMSC.WMQ_CM_CLIENT_UNMANAGED);

            Console.WriteLine("Creating connection");
            var connection = connectionfactory.CreateConnection();
System.TypeLoadException: Could not load type 'IBM.WMQ.ManagedCommonServices' from assembly 'IBM.XMS.Client.WMQ, Version=8.0.0.6, Culture=neutral, PublicKeyToken=d2666ab12fca862b'.
   at System.Reflection.RuntimeAssembly.GetType(RuntimeAssembly assembly, String name, Boolean throwOnError, Boolean ignoreCase, ObjectHandleOnStack type)

3 个答案:

答案 0 :(得分:1)

  

您可以尝试在10月3日16:35的app.config文件<appSettings> <add key="MQCSCLASS" value="amqmdnet(IBM.WMQ.ManagedCommonServices)"/> </appSettings> – subbaraoc中添加以下内容

使用amqmdnet.dll(IBM.WMQ.ManagedCommonServices)作为通用缺省值 对于XMS,请使用IBM.XMS.Client.WMQ.dll(IBM.XMS.Client.WMQ.XmsManagedCommonServices)。

这将强制客户端库直接加载公共服务类。此类必须出现在搜索位置之一中。例如:当前工作目录,GAC,...

答案 1 :(得分:0)

我使用XMS.NET,所以还有很多事情要做。 首先,您必须使用正确版本的库才能起作用。

查看XMS库的反编译源之后,我发现初始化调用会像其他人提到的那样查看MQCSCLASS属性的App.config文件。

因此有必要在该属性中添加适当的类,我必须使用以下内容:

您需要至少具有IBM的XMS Redistributable MQ库的9.0.5版本。 您需要为设置专门配置客户端库,文档概述了该过程。 除了amqmdnet.dll

,您还需要引用XMS.NET库。

答案 2 :(得分:-1)

不,此刻不可能。必须安装MQ Client才能使用XMS,因为XMS使用基础MQ .NET程序集连接到队列管理器。