SMPP,用华为的API为什么收不到短信
xmmy 2005-04-29 10:55:26 T = IFInitInterface(g_CodeProtocol, g_DriverProtocol, g_sSmgIp);
if (T == TRUE)
{
if (Login_R(UserName, Password) == TRUE)
{
iRet = HasDeliverMessage(500);
if (iRet != 0)
{
printf("无");}
else
printf("有");
unsigned char byDestTON, byDestNPI, byOrgTON, byOrgNPI, byPRI, byPID, byDCS;
char sDestAddr[MAX_ADDR_LEN];
memset(sDestAddr, 0, MAX_ADDR_LEN);
char sOrgAddr[MAX_ADDR_LEN];
memset(sOrgAddr, 0, MAX_ADDR_LEN);
char sTimeStamp[MAX_TIMESTAMP_LEN];
memset(sTimeStamp, 0, MAX_TIMESTAMP_LEN);
char sUserData[MAX_UD_LEN];
memset(sUserData, 0, MAX_UD_LEN);
unsigned char byRP;
unsigned char byUDHI;
unsigned long ulUDLen;
unsigned char byStatusReport = 0;
iRet = GetDeliverSMExEx(
&ulsm_ID,
&byDestTON,
&byDestNPI,
sDestAddr,
&byOrgTON,
&byOrgNPI,
sOrgAddr,
&byPRI,
&byRP,
&byUDHI,
&byPID,
&byDCS,
sTimeStamp,
&ulUDLen,
sUserData,
&byStatusReport
);
if(iRet == 0)
{
CString sGetData;
sGetData.Format("接收成功!\n接受到数据:%s", sUserData);
printf(sGetData );
}
else
printf("接收失败!");
}
}
====================================================
请各位看看我写的代码对吗?
我是按照API提供的文档写的,但在收短信时iRet = HasDeliverMessage(500)返回值是1。
如果不用HasDeliverMessage(500)检测,直接用GetDeliverSMExEx收,返回值是错误。
我现在没办法了,老板逼的又紧。请大家看看我到底是哪里写错了?急啊!