4

我正在尝试使用以下命令写入 IBM MQSeries 主机:

public void WriteMessage(string message)
{
    queueMessage = new MQMessage();
    queueMessage.WriteString(message);
    queueMessage.Format = MQC.MQFMT_STRING;
    queuePutMessageOptions = new MQPutMessageOptions();

    queue.Put(queueMessage, queuePutMessageOptions);
}

然而,我的 errorcatch 给了我一个错误:

应用程序中的错误

当然,这并没有显示太多。所以我检查了服务器上的事件日志,这向我显示了错误:

通过 TCP/IP 从 stx041774 (192.168.225.51) 接收数据时出错。这可能是由于通信故障。

The return code from the TCP/IP (recv) call was 10054 (X'2746').

记录这些值并告诉系统管理员。

我查了 10054 并表示:

现有连接被远程主机强行关闭。

有谁知道我能做些什么来完成这项工作?我是否必须设置一个 MQC 选项才能写入?因为我不知道如何处理这些选项,所以我什至不确定这是否是问题所在。

4

1 回答 1

3

我使用选项 mqc.mqoo_output 解决了这个问题:

queue = qManager.AccessQueue(QueueName, MQC.MQOO_OUTPUT + MQC.MQOO_FAIL_IF_QUIESCING);
于 2010-02-26T08:14:35.780 回答