IQ绿色电脑总站 IQ绿色下载站 IQ电脑图片 IQ丁香鱼电脑站
网站首页 | 网络编程 | 站长学院 | 网页制作 | 图形图像 | 操作系统 | 冲浪宝典 | 软件教程 | 网络办公 | 邮件系统 | 网络安全 | 电脑故障 | 访客留言 | 内容搜索
>首页 -> 网络编程 -> 移动开发教程 -> 移动短信技术

TOP

CMPP DELIVER
[ ]

bool CSmsCmpp::DecodeDeliver(string& sMsgID, string& sDestID, string& sServiceID, int& nTP_pid, int& nTP_udhi,
    int& nMsgFmt, string& sSrc_terminalID, int& nRegDel, int& nMsgLen, vector<BYTE>& sMsgContent,vector<BYTE>& vMsgID)
{    
    if(int(m_Body.size())<64) {
        gRunInfo.error_package(m_Body);
        return false;
    }
    std::copy(m_Body.begin(),m_Body.begin()+8,back_inserter(vMsgID));
    sMsgID = gtMsgID(vMsgID);    
    sDestID = FetchOct(8,21);
    sServiceID = FetchOct(29,10);
    nTP_pid = FetchInt8(39);
    nTP_udhi = FetchInt8(40);
    nMsgFmt = FetchInt8(41);
    sSrc_terminalID = FetchOct(42,21);
    if(strlen(sSrc_terminalID.c_str()) == 13) {
        sSrc_terminalID = sSrc_terminalID.substr(2,11);        
    }
    nRegDel = FetchInt8(63);
    nMsgLen = FetchInt8(64);
    if(nMsgLen>160||nMsgLen<0) return false;
    if(int(m_Body.size()) >= (65+nMsgLen+8))
    {
        std::copy(m_Body.begin()+65,m_Body.begin()+65+nMsgLen,back_inserter(sMsgContent));        
    }
    else {
        gRunInfo.error_package(m_Body);
        return false;
    }
    return true;
}

[上一篇]对于开发SMS初学者的,经常用到的.. [下一篇]CMPP ACTIVE TEST

评论

称  呼:
内  容:

精彩文章地带

相关栏目

最新文章

热门文章

推荐文章