【问题标题】:.Net IBM MQ Error "MQRCCF_CFIN_PARM_ID_ERROR" 3014.Net IBM MQ 错误“MQRCCF_CFIN_PARM_ID_ERROR”3014
【发布时间】:2017-03-31 00:12:35
【问题描述】:

当我尝试从队列管理器中获取队列名称时,我收到了这个我无法理解的错误

PCFMessage reqeuestMessage = new PCFMessage(MQC.MQCMD_INQUIRE_Q);
reqeuestMessage.AddParameter(MQC.MQIA_Q_TYPE, MQC.MQQT_LOCAL);
PCFMessage[] pcfResponse = messageAgent.Send(reqeuestMessage);

【问题讨论】:

  • 您的问题解决了吗?

标签: c# .net ibm-mq


【解决方案1】:

IBM 已声明未记录或维护包含在 .NET 的 MQ 类中的 PCF 支持。如需参考,请参阅 IBM MQ Development 的 Mark Taylor 的 MQ Technical Conference v2.0.1.5 演示文稿“PCF Programming”的第 16 页:

  • 有些使用 .Net 类:该接口未记录维护
    • 历史性事故
    • 缺少更新的功能,例如 z/OS 和字节字符串支持

我验证了 .NET 的 MQ 类的 PCF 接口仍然没有记录在 IBM MQ 知识中心,但有趣的是他们最近在该领域采用了一些 APAR 并解决了这些问题:


Microsoft Developer All About Interop 博客文章“PCF with IBM’s MQ Classes for .NET”有一些示例,您可能需要使用MQCMD_INQUIRE_Q_NAMES 而不是MQC.MQCMD_INQUIRE_Q。来自博客:

PCFMessageAgent agent = new PCFMessageAgent(c.MQ_QueueManager);
PCFMessage request= new PCFMessage(CMQCFC.MQCMD_INQUIRE_Q_NAMES);
request.AddParameter (MQC.MQCA_Q_NAME, queuename);
request.AddParameter (MQC.MQIA_Q_TYPE, MQC.MQQT_LOCAL);
PCFMessage[] responses = agent.Send(request);

另一个例子是@Sashi 对 Stack Overflow 问题“MQ Statistics Monitoring from C#/.NET”的回答。

【讨论】:

    【解决方案2】:

    队列名称参数在哪里?

    PCFMessage reqeuestMessage = new PCFMessage(MQC.MQCMD_INQUIRE_Q);
    reqeuestMessage.AddParameter(MQC.MQCA_Q_NAME, "*");
    reqeuestMessage.AddParameter(MQC.MQIA_Q_TYPE, MQC.MQQT_LOCAL);
    reqeuestMessage.AddParameter(MQCFC.MQIACF_Q_ATTRS,
                                 new int [] { MQC.MQCA_Q_NAME,
                                              MQC.MQIA_Q_TYPE,
                                              MQC.MQIA_CURRENT_Q_DEPTH,
                                              MQC.MQIA_OPEN_INPUT_COUNT,
                                              MQC.MQIA_OPEN_OUTPUT_COUNT });
    PCFMessage[] pcfResponse = messageAgent.Send(reqeuestMessage);
    

    您需要列出您的请求以及您希望从请求中返回的内容。

    C# .NET PCF 示例并不多,但有成百上千的 Java PCF 示例。只需在 Java PCF 代码之后为您的 C# .NET 代码建模即可。

    【讨论】:

      猜你喜欢
      • 2012-12-07
      • 2015-05-12
      • 1970-01-01
      • 2018-05-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-20
      相关资源
      最近更新 更多