?? d229.bmp.txt
字號:
nDstLength+=gsmBytes2String(buf, &pDst[nDstLength], 4); //轉(zhuǎn)換4個字節(jié)到目標PDU串
nDstLength+=gsmInvertNumbers(pSrc->'IPA,&pDst[nDstLengthl, nLength); ,/轉(zhuǎn)換TP-DA到目
標PDU串
,/TPDU段協(xié)議標識、編碼方式、用戶信息等
nLength= strlen(pSK->TP_UD);//用戶信息字符串的長度
bufIOJ- pSrc->TP_PID; //協(xié)議標識(IP-PID)
buf[lJ- pSrc->TP_DCS; ,/用戶信息編碼方式(TP-DCS)
bufI2J-0; //有效期(TP-VP)為5分鐘
if(pSrc->IP_DCS==GSM_7BIT)
{
11 7-bit編碼方式
bufI3J- nLength; //編碼前長度
nLength= gsmEncode7bit(pSrc->IP_UD,&bufl41, nLength+l) +4; 11轉(zhuǎn)換TP-DA到目標
PDU串
)
else if(pSrc->TP_DCS—GSM_UCS2)
{
,,UCS2編碼方式
buf[3]_ gsmEncodeUcs2(pSrc->IP_UD, &buf[4l, nLength);
nLength= buf[3J+4; //nLength等于該段數(shù)據(jù)長度
}
else
{
//8-bit編碼方式
buf[3]- gsmEncode8bit(pSrc->TP_UD, &bufl41, nLength);
nLength= bufl3]+4; /,nLength等于該段數(shù)據(jù)長度
}
nDstLength+=gsmBytes2String(buf, &pDst[nDstLengthl, nLength);
,/返回目標字符串長度
retum nDstLength;
)
//轉(zhuǎn)換TP-DA到目標PDU串
,/轉(zhuǎn)換TP-DA到目標PDU串
//轉(zhuǎn)換該段數(shù)據(jù)到目標PDU串
(2) PDU解碼函數(shù)gsmDecodePdu(const char水pSrc,SM_PARAM* pDst)
●說明:PDU解碼,用于接收、閱讀短消息。
●輸入:pSrc-源PDU串指針。
●輸出:pDst-目標PDU參數(shù)指針。
●返回:用戶信息串長度。
int gsmDecodePdu(const char* pSrc, SM_PARAM* pDst)
{
int nDstLength; //目標PDU串長度
unsigned char tmp; ,/內(nèi)部用的臨時字節(jié)變量
unsigned char buff2561; ,,內(nèi)部用的緩沖區(qū)
//SMSC地址信息段
229
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -