IBM WebSphere MQ 5.3升級到CSD05之后,提供了使用.net操作MQ的類庫,安裝完成之后,會在MQ的安裝目錄的bin文件夾下面多出一個amqmdnet.dll文件,把這個DLL作為引用添加到你的.net工程中,你的.net程序中就可以操作IBM WebSphere MQ。
我的MQ是中文版的,操作系統(tǒng)是win2k003 sp1,無論是在隊列管理器,還是用代碼新建的隊列,都與我本機時間相差8小時,不曉得何解,哪位高人可以釋疑?
//新建本地隊列
PCFMessageAgent agent = new PCFMessageAgent("QM_janus");
PCFMessage request = new PCFMessage(CMQCFC.MQCMD_CREATE_Q);
request.AddParameter(MQC.MQCA_Q_NAME, "test_queue");
request.AddParameter(MQC.MQIA_Q_TYPE, MQC.MQQT_LOCAL);
//request.AddParameter(MQC.MQIA_USAGE, MQC.MQUS_TRANSMISSION);
PCFMessage[] response = agent.Send(request);
//刪除隊列
PCFMessageAgent agent = new PCFMessageAgent("QM_janus");
PCFMessage request = new PCFMessage(CMQCFC.MQCMD_DELETE_Q);
request.AddParameter(MQC.MQCA_Q_NAME, "test_queue");
PCFMessage[] response = agent.Send(request);
//從隊列中讀取消息
MQQueueManager qMgr = new MQQueueManager("QM_janus");
MQQueue queue = qMgr.accessQueue("postcard", MQC.MQOO_INPUT_AS_Q_DEF | MQC.MQOO_FAIL_IF_QUIESCING);
MQGetMessageOptions gmo = new MQGetMessageOptions();
gmo.Options = MQC.MQGMO_WAIT;
gmo.WaitInterval = 1000;
gmo.MatchOptions = MQC.MQMO_NONE;
MQMessage message = new MQMessage();
queue.Get(message);
//向隊列寫消息
MQQueueManager qMgr = new MQQueueManager("QM_janus");
MQQueue queue = qMgr.AccessQueue("postcard", MQC.MQOO_OUTPUT);
MQMessage message = new MQMessage();
message.WriteString("message body");
queue.Put(message);
//枚舉所有隊列
PCFMessageAgent agent = new PCFMessageAgent("QM_janus");
PCFMessage request = new PCFMessage(CMQCFC.MQCMD_INQUIRE_Q_NAMES);
request.AddParameter(MQC.MQCA_Q_NAME, "*");
PCFMessage[] response = agent.Send(request);
string[] names = response[0].GetStringListParameterValue(CMQCFC.MQCACF_Q_NAMES);
http://m.survivalescaperooms.com/janus1999/archive/2006/09/11/501133.html
新聞熱點
疑難解答