亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? rilsimtkit.cpp

?? ril source code for Windows CE
?? CPP
?? 第 1 頁 / 共 5 頁
字號:
        psu->dwNumPlan = SIM_NUMPLAN_UNKNOWN;
    }

    // Only add the USSD string if it exists.
    if (m_dwUSSDLen)
    {
        // Shouldn't be here unless we've got something to send.
        ASSERT( NULL != m_pwszUSSD );
        ASSERT( m_dwUSSDLen > 0 );

        psu->dwParams |= SIM_PARAM_SIMUSSD_USSDOFFSET | SIM_PARAM_SIMUSSD_USSDSIZE;
        // Now add the USSD string of bytes (which was required)
        psu->dwUSSDSize = m_dwUSSDLen;
        psu->dwUSSDOffset = ROUNDTODWORD(sizeof(SIMUSSD));
        StringCbCopy( ((TCHAR *) ((LPBYTE) psu + psu->dwUSSDOffset)), m_dwUSSDLen, m_pwszUSSD );
    }

    // Set up the text string, if it's there
    if (m_dwAlphaIdLen)
    {
        psu->dwParams |= (SIM_PARAM_SIMUSSD_TEXTSIZE | SIM_PARAM_SIMUSSD_TEXTOFFSET);
        psu->dwTextSize = m_dwAlphaIdLen;
        psu->dwTextOffset = ROUNDTODWORD(sizeof(SIMUSSD)) + ROUNDTODWORD(m_dwUSSDLen);
        StringCbCopy( ((TCHAR *) ((LPBYTE) psu + psu->dwTextOffset)), m_dwAlphaIdLen, m_pwszAlphaId );
    }

    if (SIMTKIT_INVALID_VALUE != m_dwIconIdentifier)
    {
        psu->dwParams |= SIM_PARAM_SIMUSSD_ICONID;
        psu->dwIconIdentifier = m_dwIconIdentifier;
    }

    if (SIMTKIT_INVALID_VALUE != m_dwIconQualifier)
    {
        psu->dwParams |= SIM_PARAM_SIMUSSD_ICONQUALIFIER;
        psu->dwIconQualifier = m_dwIconQualifier;
    }

    *lpdwSize = dwSize;

Exit:
    *ppbResult = (LPBYTE) psu;

    DEBUGMSG(ZONE_FUNCTION, (TEXT("RilDrv : SIMTKit: -CRilSimToolkitCommand::BuildSIMUSSD\r\n")));
    return hr;
}

/****************************************************************************

    FUNCTION:   BuildSIMSMS

    PURPOSE:    Builds the SIMSMS structure

    PARAMETERS: dwNotifyCode - Which command is this?
                bCmdQualifier - Specific info from the command details
                ppbResult - OUT parameter to hold allocated structure

    RETURNS:    HRESULT

****************************************************************************/

HRESULT CRilSimToolkitCommand::BuildSIMSMS(DWORD dwNotifyCode, BYTE bCmdQualifier, LPBYTE *ppbResult, DWORD *lpdwSize)
{
    HRESULT hr = S_OK;
    SIMSMS *pss = NULL;
    DWORD dwSize;
    unsigned int uiSize;

    DEBUGMSG(ZONE_FUNCTION, (TEXT("RilDrv : SIMTKit: +CRilSimToolkitCommand::BuildSIMSMS\r\n")));

    dwNotifyCode;  // Avoid warning C4100: unreferenced formal parameter
    bCmdQualifier;    // Avoid warning C4100: unreferenced formal parameter

    // OK, let's put everything together here
    BOOL fSafeDword = FALSE;
    if ( TRUE == safeIntUAdd( ROUNDTODWORD(sizeof(SIMSMS)),ROUNDTODWORD(m_dwAlphaIdLen), &uiSize ))
    {
        if ( TRUE == safeIntUAdd( uiSize, ROUNDTODWORD(m_dwAddressLen), &uiSize ))
        {
            fSafeDword = safeIntUAdd( uiSize, ROUNDTODWORD(m_dwTPDULen), &uiSize );
        }
    }
    if ( FALSE == fSafeDword )
    {
        hr = E_ABORT;
        goto Exit;
    }
    else
    {
        dwSize = uiSize;
    }

    if ( dwSize == 0 )
    {
        hr = E_ABORT;
        goto Exit;
    }

    pss = (SIMSMS *) new BYTE[dwSize];
    if (!pss)
    {
        hr = E_OUTOFMEMORY;
        goto Exit;
    }

    memset(pss, 0, dwSize);
    pss->cbSize = dwSize;
    pss->dwParams = SIM_PARAM_SIMSMS_FLAGS;
    pss->dwFlags = 0;

    if (m_dwTPDULen)
    {
        pss->dwParams |= (SIM_PARAM_SIMSMS_TPDUOFFSET | SIM_PARAM_SIMSMS_TPDUSIZE);
        // Now, set the TPDU bytes
        pss->dwTPDUSize = m_dwTPDULen;
        pss->dwTPDUOffset = ROUNDTODWORD(sizeof(SIMSMS));
        memcpy(((LPBYTE *) ((LPBYTE) pss + pss->dwTPDUOffset)), m_lpbTPDU, m_dwTPDULen);
    }

    // Set up the text string, if it's there
    if (m_dwAlphaIdLen)
    {
        pss->dwParams |= (SIM_PARAM_SIMSMS_TEXTSIZE | SIM_PARAM_SIMSMS_TEXTOFFSET);
        pss->dwTextSize = m_dwAlphaIdLen;
        pss->dwTextOffset = ROUNDTODWORD(sizeof(SIMSMS)) + ROUNDTODWORD(m_dwTPDULen);
        StringCbCopy( ((TCHAR *) ((LPBYTE) pss + pss->dwTextOffset)), m_dwAlphaIdLen, m_pwszAlphaId );
    }

    // And finally the address, if it's there
    if (m_dwAddressLen)
    {
        // OK, the address needs to be there
        pss->dwParams |= (SIM_PARAM_SIMSMS_NUMPLAN | SIM_PARAM_SIMSMS_ADDRESSTYPE
                            | SIM_PARAM_SIMSMS_ADDRESSSIZE | SIM_PARAM_SIMSMS_ADDRESSOFFSET);
        pss->dwNumPlan = m_dwNumPlan;
        pss->dwAddressType = m_dwAddrType;
        pss->dwAddressSize = m_dwAddressLen;
        pss->dwAddressOffset = ROUNDTODWORD(sizeof(SIMSMS)) + ROUNDTODWORD(m_dwTPDULen) + ROUNDTODWORD(m_dwAlphaIdLen);
        StringCbCopy( ((TCHAR *) ((LPBYTE) pss + pss->dwAddressOffset)), m_dwAddressLen, m_pwszAddress );
    }

    if (SIMTKIT_INVALID_VALUE != m_dwIconIdentifier)
    {
        pss->dwParams |= SIM_PARAM_SIMSMS_ICONID;
        pss->dwIconIdentifier = m_dwIconIdentifier;
    }

    if (SIMTKIT_INVALID_VALUE != m_dwIconQualifier)
    {
        pss->dwParams |= SIM_PARAM_SIMSMS_ICONQUALIFIER;
        pss->dwIconQualifier = m_dwIconQualifier;
    }

    *lpdwSize = dwSize;

Exit:
    *ppbResult = (LPBYTE) pss;

    DEBUGMSG(ZONE_FUNCTION, (TEXT("RilDrv : SIMTKit: +CRilSimToolkitCommand::BuildSIMSMS\r\n")));
    return hr;
}


/****************************************************************************

    FUNCTION:   BuildSIMEVENTLIST

    PURPOSE:    Builds the SIMEVENTLIST structure

    PARAMETERS: dwNotifyCode - Which command is this?
                bCmdQualifier - Specific info from the command details
                ppbResult - OUT parameter to hold allocated structure

    RETURNS:    HRESULT

****************************************************************************/

HRESULT CRilSimToolkitCommand::BuildSIMEVENTLIST(DWORD dwNotifyCode, BYTE bCmdQualifier, LPBYTE *ppbResult, DWORD *lpdwSize)
{
    SIMEVENTLIST *psel = NULL;
    HRESULT hr = S_OK;
    DWORD dwSize;

    DEBUGMSG(ZONE_FUNCTION, (TEXT("RilDrv : SIMTKit: +CRilSimToolkitCommand::BuildSIMEVENTLIST\r\n")));

    dwNotifyCode;  // Avoid warning C4100: unreferenced formal parameter
    bCmdQualifier;    // Avoid warning C4100: unreferenced formal parameter

    // OK, let's see how much space we need now
    dwSize = ROUNDTODWORD(sizeof(SIMEVENTLIST)) + ROUNDTODWORD(m_dwEventListLen);

    if ( dwSize == 0 )
    {
        hr = E_ABORT;
        goto Exit;
    }

    psel = (SIMEVENTLIST *) new BYTE[dwSize];
    if (!psel)
    {
        DEBUGCHK(FALSE);
        hr = E_OUTOFMEMORY;
        goto Exit;
    }

    memset(psel, 0, dwSize);
    psel->cbSize = dwSize;

    DEBUGCHK(0 < m_dwEventListLen);
    DEBUGCHK(NULL != m_lpbEventList);

    if (m_dwEventListLen && m_lpbEventList)
    {
        psel->dwParams = SIM_PARAM_SIMEVENTLIST_EVENTSSIZE | SIM_PARAM_SIMEVENTLIST_EVENTSOFFSET;
        psel->dwEventsSize = m_dwEventListLen;
        psel->dwEventsOffset= ROUNDTODWORD(sizeof(SIMEVENTLIST));
        memcpy(((LPBYTE *) ((LPBYTE) psel + psel->dwEventsOffset)), m_lpbEventList, m_dwEventListLen);
    }

    *lpdwSize = dwSize;

Exit:
    *ppbResult = (LPBYTE) psel;

    DEBUGMSG(ZONE_FUNCTION, (TEXT("RilDrv : SIMTKit: -CRilSimToolkitCommand::BuildSIMEVENTLIST\r\n")));
    return hr;
}


/****************************************************************************

    FUNCTION:   BuildSIMLAUNCHBROWSER

    PURPOSE:    Builds the SIMLAUNCHBROWSER structure

    PARAMETERS: dwNotifyCode - Which command is this?
                bCmdQualifier - Specific info from the command details
                ppbResult - OUT parameter to hold allocated structure

    RETURNS:    HRESULT

****************************************************************************/
HRESULT CRilSimToolkitCommand::BuildSIMLAUNCHBROWSER(DWORD dwNotifyCode, BYTE bCmdQualifier, LPBYTE *ppbResult, DWORD *lpdwSize)
{
    SIMLAUNCHBROWSER *pslb = NULL;
    SIMFILEREFERENCE *psfr;
    HRESULT hr = S_OK;
    DWORD dwUsedSize;
    DWORD dwSize;
    DWORD i;
    DWORD cbFileSize;
    unsigned int uiSize;

    DEBUGMSG(ZONE_FUNCTION, (TEXT("RilDrv : SIMTKit: +CRilSimToolkitCommand::BuildSIMLAUNCHBROWSER\r\n")));

    dwNotifyCode;  // Avoid warning C4100: unreferenced formal parameter

    // How much space do we need to allocate?
    BOOL fSafeDword = FALSE;
    if ( TRUE == safeIntUAdd( ROUNDTODWORD(sizeof(SIMLAUNCHBROWSER)),ROUNDTODWORD(m_dwAlphaIdLen), &uiSize ))
    {
        if ( TRUE == safeIntUAdd( uiSize, ROUNDTODWORD(m_dwURLLen), &uiSize ))
        {
            if ( TRUE == safeIntUAdd( uiSize, ROUNDTODWORD(m_dwBearerLen), &uiSize ))
            {
                if ( TRUE == safeIntUAdd( uiSize, ROUNDTODWORD(m_dwTextLen), &uiSize))
                {
                    for (i = 0, fSafeDword = TRUE; (i < m_numpsfr) && (TRUE == fSafeDword); i++)
                    {
                        fSafeDword = safeIntUAdd( uiSize, ROUNDTODWORD(m_rgpsfr[i]->cbSize), &uiSize);
                    }
                }
            }
        }
    }
    if ( FALSE == fSafeDword )
    {
        hr = E_ABORT;
        goto Exit;
    }
    else
    {
        dwSize = uiSize;
    }


    pslb = (SIMLAUNCHBROWSER *) new BYTE[dwSize];
    if (!pslb)
    {
        hr = E_OUTOFMEMORY;
        goto Exit;
    }

    // Populate this structure
    memset(pslb, 0, dwSize);
    pslb->cbSize = dwSize;
    dwUsedSize = ROUNDTODWORD(sizeof(SIMLAUNCHBROWSER));

    pslb->dwParams |= SIM_PARAM_SIMLAUNCHBROWSER_FLAGS;
    pslb->dwFlags = bCmdQualifier;

    if (m_dwBrowserId != -1)
    {
        pslb->dwParams |= SIM_PARAM_SIMLAUNCHBROWSER_BROWSERID;
        pslb->dwBrowserId = m_dwBrowserId;
    }

    if (m_dwURLLen)
    {
        pslb->dwParams |= (SIM_PARAM_SIMLAUNCHBROWSER_URLSIZE | SIM_PARAM_SIMLAUNCHBROWSER_URLOFFSET);
        pslb->dwURLSize = m_dwURLLen;
        pslb->dwURLOffset = dwUsedSize;
        StringCbCopy( ((TCHAR *) ((LPBYTE) pslb + pslb->dwURLOffset)), m_dwURLLen, m_pwszURL );
        dwUsedSize += ROUNDTODWORD(m_dwURLLen);
    }

    if (m_dwBearerLen)
    {
        pslb->dwParams |= (SIM_PARAM_SIMLAUNCHBROWSER_BEARERSIZE | SIM_PARAM_SIMLAUNCHBROWSER_BEAREROFFSET);
        pslb->dwBearerSize = m_dwBearerLen;
        pslb->dwBearerOffset = dwUsedSize;
        memcpy(((LPBYTE) pslb + pslb->dwBearerOffset), m_lpbBearer, m_dwBearerLen);
        dwUsedSize += ROUNDTODWORD(m_dwBearerLen);
    }

    if (m_dwTextLen)
    {
        pslb->dwParams |= (SIM_PARAM_SIMLAUNCHBROWSER_GATEWAYSIZE | SIM_PARAM_SIMLAUNCHBROWSER_GATEWAYOFFSET);
        pslb->dwGatewaySize = m_dwTextLen;
        pslb->dwGatewayOffset = dwUsedSize;
        StringCbCopy( ((TCHAR *) ((LPBYTE) pslb + pslb->dwGatewayOffset)), m_dwTextLen, m_pwszText );
        dwUsedSize += ROUNDTODWORD(m_dwTextLen);
    }

    if (m_dwAlphaIdLen)
    {
        pslb->dwParams |= (SIM_PARAM_SIMLAUNCHBROWSER_TEXTSIZE | SIM_PARAM_SIMLAUNCHBROWSER_TEXTOFFSET);
        pslb->dwTextSize = m_dwAlphaIdLen;
        pslb->dwTextOffset = dwUsedSize;
        StringCbCopy( ((TCHAR *) ((LPBYTE) pslb + pslb->dwTextOffset)), m_dwAlphaIdLen, m_pwszAlphaId );
        dwUsedSize += ROUNDTODWORD(m_dwAlphaIdLen);
    }

    // Now for the Provisioning file references
    if (m_numpsfr)
    {
        pslb->dwParams |= (SIM_PARAM_SIMLAUNCHBROWSER_PROVISIONFILECOUNT |
                           SIM_PARAM_SIMLAUNCHBROWSER_PROVISIONFILESIZE  |
                           SIM_PARAM_SIMLAUNCHBROWSER_PROVISIONFILEOFFSET);
        pslb->dwProvisionFileCount = m_numpsfr;
        pslb->dwProvisionFileOffset = dwUsedSize;
        pslb->dwProvisionFileSize = dwSize - pslb->dwProvisionFileOffset;

        psfr = (SIMFILEREFERENCE *) ((LPBYTE) pslb + pslb->dwProvisionFileOffset);
        for (i = 0; i < m_numpsfr; i++)
        {
            cbFileSize = m_rgpsfr[i]->cbSize;

            memcpy(psfr, m_rgpsfr[i], cbFileSize);
            psfr = (SIMFILEREFERENCE *) ((LPBYTE) psfr + cbFileSize);
        }
    }

    if (SIMTKIT_INVALID_VALUE != m_dwIconIdentifier)
    {
        pslb->dwParams |= SIM_PARAM_SIMLAUNCHBROWSER_ICONID;
        pslb->dwIconIdentifier = m_dwIconIdentifier;
    }

    if (SIMTKIT_INVALID_VALUE != m_dwIconQualifier)
    {
        pslb->dwParam

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧亚一区二区三区| 欧美中文字幕亚洲一区二区va在线| 99v久久综合狠狠综合久久| 久久亚洲二区三区| 亚洲第一激情av| 国产高清亚洲一区| 久久亚洲影视婷婷| 成人国产一区二区三区精品| 国产成人av网站| 国产精品99久| 国产精品午夜春色av| 欧美日韩亚洲另类| 国内精品久久久久影院色| 欧美一区二区三区人| 国产一区91精品张津瑜| 精品卡一卡二卡三卡四在线| 欧美高清视频不卡网| 亚洲欧美日韩国产综合在线| 成a人片国产精品| 国产乱子伦视频一区二区三区 | 色婷婷综合久久| 一区二区成人在线观看| 久久一区二区三区四区| 色婷婷久久久久swag精品| 成人av网址在线| 国产盗摄女厕一区二区三区| 精品影视av免费| 日本中文在线一区| 日韩电影一区二区三区| 婷婷综合五月天| 午夜视频在线观看一区二区| 国产女人aaa级久久久级| 中文字幕一区日韩精品欧美| 国产婷婷精品av在线| 国产精品欧美一级免费| 国产精品久久精品日日| 欧美韩国日本不卡| 日韩一区中文字幕| 中文字幕一区二区三区av| 在线观看一区二区视频| 91丨九色丨黑人外教| 欧美性欧美巨大黑白大战| 色综合久久中文综合久久97| 欧美调教femdomvk| 91精品久久久久久久91蜜桃| 欧美aⅴ一区二区三区视频| 亚洲图片一区二区| 日韩三级视频中文字幕| 日韩欧美一二区| 欧美国产视频在线| 天天综合天天做天天综合| 精一区二区三区| 欧美日韩国产影片| 日韩视频中午一区| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 一级做a爱片久久| 国产乱人伦偷精品视频不卡| 欧洲亚洲国产日韩| 26uuu国产一区二区三区| 一区二区三区免费网站| 国产在线视频精品一区| 在线成人午夜影院| 亚洲精品写真福利| 成人亚洲一区二区一| 欧美高清视频在线高清观看mv色露露十八 | 欧美激情一区二区三区不卡 | 91精品福利视频| 久久婷婷国产综合精品青草| 午夜成人在线视频| 色一区在线观看| 亚洲欧美日韩国产另类专区| 国产成人在线观看免费网站| 欧美一区二区三区四区视频| 亚洲黄色性网站| 欧美在线一二三四区| 国产精品久久久久aaaa| 波多野结衣一区二区三区 | 精品一区免费av| 精品1区2区3区| 亚洲三级在线观看| 色吊一区二区三区| 一区二区三区高清| 欧美影视一区二区三区| 一区二区三区四区高清精品免费观看 | 毛片不卡一区二区| 欧美理论在线播放| 美女性感视频久久| 久久久精品国产免费观看同学| 国模少妇一区二区三区| 久久久国产一区二区三区四区小说 | 日本电影亚洲天堂一区| 丝袜国产日韩另类美女| 欧美大片日本大片免费观看| 国产91丝袜在线播放0| 1000精品久久久久久久久| 在线免费亚洲电影| 污片在线观看一区二区| 日韩一区二区免费视频| 成人午夜伦理影院| 亚洲三级小视频| 日韩免费一区二区| 北条麻妃国产九九精品视频| 亚洲成av人在线观看| 欧美国产日韩在线观看| 欧美一区三区四区| 国产一区二区在线观看视频| 91在线一区二区三区| 亚洲精品v日韩精品| 高清日韩电视剧大全免费| 亚洲一区自拍偷拍| 欧美激情综合五月色丁香小说| 欧美亚洲国产一区二区三区| 久久99久久久欧美国产| 亚洲精品高清视频在线观看| 一本大道av伊人久久综合| 国产精品综合二区| 蜜臀a∨国产成人精品| 亚洲一区二区黄色| 亚洲伦在线观看| 精品毛片乱码1区2区3区| 欧美私人免费视频| 在线观看一区二区视频| 国产精品一线二线三线| 日本欧美一区二区三区乱码| 亚洲一级在线观看| 亚洲欧美国产三级| 国产精品久久久久久一区二区三区 | 这里只有精品免费| 欧美日本在线观看| 欧美午夜影院一区| 欧美日韩精品一区二区三区 | 日本不卡123| 天堂av在线一区| 青草av.久久免费一区| 日韩精品1区2区3区| 美女精品一区二区| 国模娜娜一区二区三区| 国产精品一区二区在线播放| 激情偷乱视频一区二区三区| 久久精品噜噜噜成人88aⅴ| 久久狠狠亚洲综合| 成人激情开心网| 欧美在线观看一区| 欧美一区二区三区视频在线| 日韩亚洲欧美成人一区| 久久蜜桃av一区二区天堂| 国产精品网站在线观看| 亚洲高清中文字幕| 国产成人无遮挡在线视频| 91丨porny丨最新| 精品国产精品网麻豆系列| 中文字幕在线观看一区二区| 亚洲综合色网站| 国产精品一区二区无线| 91啪亚洲精品| 久久久99免费| 亚洲另类中文字| 国产乱子伦视频一区二区三区 | 成人av网址在线观看| 欧美疯狂做受xxxx富婆| 久久久久久久国产精品影院| 亚洲精品国产精华液| 韩国欧美国产一区| 欧美午夜电影在线播放| 欧美va在线播放| 丝袜美腿一区二区三区| 色婷婷久久久亚洲一区二区三区 | 91久久国产最好的精华液| 国产欧美日韩精品一区| 久久精品国产秦先生| 欧美视频一二三区| 国产精品国产三级国产a| 美国十次综合导航| 欧美性猛交一区二区三区精品| 国产女人18水真多18精品一级做| 日本特黄久久久高潮| 欧美亚洲自拍偷拍| 亚洲电影欧美电影有声小说| 一道本成人在线| 亚洲日本欧美天堂| 91福利国产成人精品照片| 1区2区3区国产精品| 成人高清免费在线播放| 国产欧美精品区一区二区三区| 国产成人精品影视| 国产精品高清亚洲| 91福利国产成人精品照片| 亚洲国产欧美在线| 日韩欧美亚洲一区二区| 国产福利一区二区三区视频 | 专区另类欧美日韩| 欧美亚洲尤物久久| 全部av―极品视觉盛宴亚洲| 日韩精品一区二| 国产一区二区电影| 一区二区三区中文字幕在线观看| 欧美色男人天堂| 捆绑调教美女网站视频一区| 久久久亚洲午夜电影| 色欧美乱欧美15图片|