zoukankan      html  css  js  c++  java
  • 使用c#操作IBM WebSphere MQ

        IBM WebSphere MQ 5.3升级到CSD05之后,提供了使用.net操作MQ的类库,安装完成之后,会在MQ的安装目录的bin文件夹下面多出一个amqmdnet.dll文件,把这个DLL作为引用添加到你的.net工程中,你的.net程序中就可以操作IBM WebSphere MQ。
        我的MQ是中文版的,操作系统是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);
     


  • 相关阅读:
    技术必备:推荐一款接口自动化测试数据校验神器
    提高GUI自动化测试稳定性解决方案
    新特性,推荐一款超强接口管理神器 Apifox
    测试开发:从0到1学习如何测试API网关
    接口自动化测试,一键快速校验接口返回值全部字段
    测试工程师必学:测试人员如何深入了解项目
    Django+Vue+Docker搭建接口测试平台实战
    如何开展线上全链路压测思路分享
    刚转行1年测试新手:学习Python编程经验实战分享
    测开新手:从0到1,自动化测试接入Jenkins学习
  • 原文地址:https://www.cnblogs.com/janus1999/p/501133.html
Copyright © 2011-2022 走看看