这是程序源码 麻烦各位帮忙看看有哪些语法上的错误 命令行下编译通过,但出现很多警告.运行服务时无法连接上我的服务端,出现疑是server died的问题,出错提示为连接超时,这是ULOG下的记录:
170035.SAINTRAY!BBL.2664.4012.0: LIBTUX_CAT:541: WARN: Server GROUP1/1 terminated
170035.SAINTRAY!BBL.2664.4012.0: LIBTUX_CAT:551: WARN: Cleaning up server GROUP1/1
170035.SAINTRAY!cleanupsrv.1420.3140.-2: 02-08-2010: tuxedo Version 8.0 32-bit Windows.
170035.SAINTRAY!cleanupsrv.1420.3140.-2: ERROR: msgsnd errLIBTUX_CAT:669: ERROR: Message operation failed because of the invalid message queue identifier) errno=22,qid=13056,buf=9484336,bytes=297,flag=2048
170035.SAINTRAY!cleanupsrv.1420.3140.-2: CMDTUX_CAT:555: ERROR: Unable to reply to 3948
170035.SAINTRAY!cleanupsrv.1420.3140.-2: server GROUP1/1: CMDTUX_CAT:551: INFO: server removed
170103.SAINTRAY!?proc.3248.2824.0: 02-08-2010: Tuxedo Version 8.0 32-bit Windows.
170103.SAINTRAY!?proc.3248.2824.0: hello === Tpcall failed 1, tperrno=TPENOENT - no entry found
这是源码,麻烦各位大虾帮帮看看了
#include<stdio.h>
#include<ctype.h>
#include "atmi.h"
#include "fml.h"
#include "eb_fml_tbl.h"
void sertest(TPSVCINFO *rqst)
{
char TransCode[10];
char SheetNum[21];
long Amount;
FBFR *pFmlReq,*pFmlAns;
int len,RtnCode;
memset(TransCode,0,sizeof(TransCode));
memset(SheetNum,0,sizeof(SheetNum));
memset(EBS_TransCode,0,sizeof(EBS_TransCode));
//获取交易码TransCode
pFmlReq=(FBFR *)rqst->data;
pFmlAns =(FBFR *)tpalloc("FML",NULL,8192);
len=sizeof(TransCode);
if (Fget(pFmlReq,TransCode,0,EBS_TransCode,len)<0)
{
RtnCode=-1;
goto _END;
}
else
{
RtnCode=0;
}
//返回码EBS_RtnCode 0或-1
//返回信息EBS_ErrMsg
if(RtnCode==0)
{
//判断交易码
if(TransCode=="358800"||TransCode=="350101")
{
//获得客户编号
len=sizeof(SheetNum);
if(Fget(pFmlReq,SheetNum,0,EBT_SheetNum,len)<0)
{
RtnCode=-1;
goto _END;
}
else
{
//返回客户编号EBT_SheetNum
Fchg(pFmlAns,EBT_SheetNum,0,(char *)&SheetNum,(int)0);
}
}
else if(TransCode=="3587")
{
//返回开卡数EBT_Amount
//获得开卡数
//返回开卡数EBT_Amount
Amount=2;
Fchg(pFmlAns,EBT_Amount,0,(char *)&Amount,(int)0);
}
}
_END:
if(RtnCode==0)
{
Fchg(pFmlAns,EBS_RtnCode,0,(char *)&RtnCode,(int)0);
Fchg(pFmlAns,EBS_ErrMsg,0,"处理完成",8);
}
else
{
Fchg(pFmlAns,EBS_RtnCode,0,(char *)&RtnCode,(int)0);
Fchg(pFmlAns,EBS_ErrMsg,0,"处理出错:取客户端信息失败",8);
}
tpreturn( TPSUCCESS,0,(char *)pFmlAns,0,0 );
}
--转自