我有一個簡單的程序連接到遠程隊列管理器,似乎工作正常,我可以發送和接收消息。但是我注意到,每次連接時,我都會在Windows應用程序事件管理器中發生錯誤:Websphere MQ 7.0.1 C#XMS連接導致10054(X'2746')tcp錯誤
從主機myhost(12.213.143.252)接收時出錯。
從我的主機(12.213.143.252)接收數據時發生錯誤,而不是 TCP/IP。這可能是由於通訊失敗。
來自TCP/IP recv()調用的返回碼是10054(X'2746')。 記錄這些值並告訴系統管理員。
我認爲這可能是我沒有正確斷開客戶端,雖然我不知道我做錯了什麼。下面是代碼我使用的測試連接這仍然是導致此問題:
XMSFactoryFactory factoryFactory = XMSFactoryFactory.GetInstance(XMSC.CT_WMQ);
IConnectionFactory cf = factoryFactory.CreateConnectionFactory();
cf.SetStringProperty(XMSC.WMQ_QUEUE_MANAGER, WebSphereConfigObject.QueueManager);
cf.SetStringProperty(XMSC.WMQ_HOST_NAME, WebSphereConfigObject.Host);
cf.SetIntProperty(XMSC.WMQ_PORT, WebSphereConfigObject.Port);
cf.SetStringProperty(XMSC.WMQ_CHANNEL, WebSphereConfigObject.ServerConnectionChannel);
cf.SetIntProperty(XMSC.WMQ_CONNECTION_MODE, XMSC.WMQ_CM_CLIENT);
IConnection connection = cf.CreateConnection();
ISession session = connection.CreateSession(false, AcknowledgeMode.AutoAcknowledge);
connection.Start();
session.Close();
connection.Stop();
connection.Close();
任何幫助,非常感謝!
那麼上面的代碼有什麼問題會導致這個突然終止? – bobwah
不,我沒有在上面的代碼中看到任何錯誤。該代碼不會爲我記錄任何事件。我正在使用MQ v7016。您可能需要使用隊列管理器側面跟蹤來查明發生了什麼問題。 – Shashi
啊好的,我在建立連接時跟蹤了這一點,併爲amqrmppa.exe進程提供了跟蹤文件。然而,我不知道該在1400行文件中查找可能發生的事情或該怎麼做的事情,從哪裏開始? – bobwah