1

我正在使用 MQ.NET 类,但是当我指定正确的队列管理器时,我仍然得到以下错误。

例外:

CompCode:2,原因:2058 MQRC_Q_MGR_NAME_ERROR 数据:{System.Collections.ListDictionaryInternal}

消息:“MQRC_Q_MGR_NAME_ERROR” 来源:“amqmdnet”

MQQueueManager mqQMgr=null; 
//MYMGRTEST is my queue manager
mqQMgr = new MQQueueManager("MYMGRTEST"); -> This piece of line throws above exception.

发生这种情况的可能原因是什么(网络权限/管理员权限/?)?有什么措施可以纠正吗?

我还在 websphere 的错误文件夹下的错误日志中看到此信息。

AMQ9518:找不到文件“C:\Program Files (x86)\IBM\WebSphere MQ\AMQCLCHL.TAB”。

说明:该程序要求文件“C:\Program Files (x86)\IBM\WebSphere MQ\AMQCLCHL.TAB”存在且可用。

操作:这可能是由可选环境变量 MQCHLLIB、MQCHLTAB 或 MQDATA 的无效值引起的。如果这些变量有效或未设置,那么记录文件的名称并告诉系统管理员必须确保文件“C:\Program Files (x86)\IBM\WebSphere MQ\AMQCLCHL.TAB”对程序可用。

不知道那个错误是关于什么的,因为我已经在我的系统中安装了 MQ 客户端。

4

1 回答 1

3

希望您正在设置 MQEnvironment:

MQEnvironment.channel
MQEnvironment.port
MQEnvironment.hostname

您需要在其中设置正确的值。像:

MQEnvironment.hostname="localhost", 
MQEnvironment.port=1414
MQEnvironment.channel="SYSTEM.DEF.CHANNEL"
于 2013-03-28T09:22:14.567 回答