Chinaunix

标题: MQ程序无法执行 [打印本页]

作者: 凌霄    时间: 2006-03-05 17:04
标题: MQ程序无法执行
我的操作系统是AIX5.1的,并在上面安装好了MQ5.1,
现在消息队列都已经配好,并测试通过.
可是我用一个程序来执行发现其程序无法执行.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <cmqc.h>
int main(int argc, char **argv)
{
   FILE *fp;
   MQOD     od = {MQOD_DEFAULT};   
   MQMD     md = {MQMD_DEFAULT};  
   MQPMO   pmo = {MQPMO_DEFAULT};
   
   MQHCONN  Hcon;               
   MQHOBJ   Hobj;               
   MQLONG   O_options;        
   MQLONG   C_options;         
   MQLONG   CompCode;         
   MQLONG   OpenCode;           
   MQLONG   Reason;              
   MQLONG   CReason;           
   MQLONG   messlen;         
   char     buffer[100];         
   char     QMName[50];         
   strcpy(QMName,"JSCZ_MQ_WJNSH");
   MQCONN(QMName,   &Hcon,     &CompCode,     &CReason);

.....
}
程序都编译通过,就是执行时死了,MQCONN这函数没返回,一直停在那里。请问是怎么回事???
作者: core_he    时间: 2006-03-19 19:35
标题: 回复 1楼 凌霄 的帖子
编译用的什么参数呢? 贴出来看看
作者: super939    时间: 2006-03-21 10:17
看看先啊
作者: zxc_home    时间: 2006-04-06 17:44
memcpy(odG.ObjectName,          /* name of input queue            */
          trig -> QName, MQ_Q_NAME_LENGTH);
   O_options = MQOO_INPUT_SHARED   /* open queue for shared input    */
             + MQOO_FAIL_IF_QUIESCING; /* but not if MQM stopping    */
   MQOPEN(Hcon,                    /* connection handle              */
          &odG,                    /* object descriptor for queue    */
          O_options,               /* open options                   */
          &Hobj_g,                   /* object handle                  */
          &CompCode,               /* MQOPEN completion code         */
          &Reason);                /* reason code                    */

   /* report reason if any; stop if it failed     */
   if (Reason != MQRC_NONE)
   {
     printf("MQOPEN (input) ended with reason code %ld\n", Reason);
   }

   if (CompCode == MQCC_FAILED)
   {
     exit(Reason);
   }




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2