• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Benjamin

            靜以修身,儉以養德,非澹薄無以明志,非寧靜無以致遠。
            隨筆 - 397, 文章 - 0, 評論 - 196, 引用 - 0
            數據加載中……

            WM5.0+VC8.0發送GET請求的方法

            在WM5.0下,通過移動的網關發送GET請求,其實現方法有以下兩種:用微軟封裝的CInternetSession、CHttpFile類和用SOCKET。
            用微軟封裝的CInternetSession、CHttpFile類,必須要給VC8打上SP1補丁,這個補丁裝起來比較費事;另外必須采用異步(多線程),否則會超時收不到數據,這是微軟的一個BUG;在接收數據時,如果采用C++標準的流操作,那么在解析數據時很有可能出現亂碼,這個問題出現的不明顯,但是在大數據時,出現的機率很大,用了一天的時間才發現是緩沖的原因,在最后一次向文件中寫數據時,如果數據不足以填充整個緩沖區,那么文件中很有可能有亂碼,由于這個錯誤有很大的偶然性,所以很難察覺,建議用MFC封裝好的文件類。
            用SOCKET將數據封裝成HTTP格式發送到服務器端,在程序或進程第一次發送GET請求時,要發兩次,第一次收到的是移動網關發給客戶端的數據,以后發一次就可以,要格外注意的是,在連續發數據時,要先關掉SOCKET在發,然后再發;在發送完數據,必須要Sleep上幾秒,等待接收完數據,這和異步類似;它的接收文件,如果要用文件操作,也建議用MFC封裝的類,如果接收的數據比較大時。
            綜上所述,兩種方法的本質其實沒什么差別,只是用SOCKET可能比較簡單,其他的如用ACE,其原理都一樣,還是得異步或多線程。另外在用SOCKET時,接收到的文件中含有以前接收的數據,但是在讀文件時確只有本次接收的數據,這一點要注意。

            posted on 2008-10-11 23:01 Benjamin 閱讀(690) 評論(0)  編輯 收藏 引用 所屬分類: PDA/PPC開發

            色综合久久无码中文字幕| 日韩电影久久久被窝网| 亚洲精品乱码久久久久久久久久久久| 久久伊人色| 久久久久高潮综合影院| 99精品久久精品一区二区| 久久精品亚洲乱码伦伦中文| 久久婷婷午色综合夜啪| 久久99精品久久久久婷婷| 久久久久国产| 久久不见久久见免费视频7| 久久久久国产| 青青青国产成人久久111网站| 久久亚洲AV成人无码软件| 久久这里只有精品久久| 亚洲精品无码专区久久久| 久久久无码精品亚洲日韩软件| 亚洲愉拍99热成人精品热久久| 狠狠色综合网站久久久久久久| 久久偷看各类wc女厕嘘嘘| 亚洲午夜无码AV毛片久久| 国产亚洲精午夜久久久久久 | 久久久免费观成人影院| 99久久99久久| 亚洲va中文字幕无码久久 | 狠狠色丁香婷婷综合久久来| 久久亚洲精品国产亚洲老地址| 久久99国产一区二区三区| 久久综合给久久狠狠97色| 亚洲AV无码久久精品成人| 久久婷婷五月综合国产尤物app| 国产精品午夜久久| 人人狠狠综合久久亚洲88| 久久精品国产99国产精品澳门| 欧美日韩久久中文字幕| 久久天天躁狠狠躁夜夜av浪潮| 国产精品免费久久| 9191精品国产免费久久| 99久久亚洲综合精品成人| 国产成人香蕉久久久久| 国产AⅤ精品一区二区三区久久 |