• <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>
            posts - 126,  comments - 73,  trackbacks - 0

            //==========> 初始化回話
            HINTERNET hSession=::InternetOpen("Http",
            PRE_CONFIG_INTERNET_ACCESS,
            "",
            INTERNET_INVALID_PORT_NUMBER,
            0);

            if(hSession==NULL){
            AfxMessageBox("Internet session initalization failed!");
            return 1;
            }

            //==========> 創建鏈接
            HINTERNET hConnect=::InternetConnect(hSession,
            pDlg->m_strServer,
            INTERNET_INVALID_PORT_NUMBER,
            "",
            "",
            INTERNET_SERVICE_HTTP,
            0,
            0);

            if(hConnect==NULL){
            AfxMessageBox("Internet connect initialization failed!");
            VERIFY(::InternetCloseHandle(hSession));
            return 1;
            }

            //==========> 打開請求鏈接
            HINTERNET hHttpFile=::HttpOpenRequest(hConnect,
            "GET",
            pDlg->m_strPath,
            HTTP_VERSION,
            NULL,
            0,
            INTERNET_FLAG_DONT_CACHE,
            0);

            if(hHttpFile==NULL){
            AfxMessageBox("Http request failed!");
            VERIFY(::InternetCloseHandle(hConnect));
            VERIFY(::InternetCloseHandle(hSession));
            return 1;
            }

            //==========> 發送請求
            BOOL bSendRequest=::HttpSendRequest(hHttpFile,
            NULL,
            0,
            0,
            0);

            if(bSendRequest){
            char achQueryBuf[16];
            DWORD dwFileSize;
            DWORD dwQueryBufLen=sizeof(achQueryBuf);

            BOOL bQuery=::HttpQueryInfo(hHttpFile,
            HTTP_QUERY_CONTENT_LENGTH,
            achQueryBuf,
            &dwQueryBufLen,
            NULL);

            if(bQuery){
            dwFileSize=(DWORD)atol(achQueryBuf);
            }
            else{
            dwFileSize=10*1024;
            }

            char* lpszBuf=new char[dwFileSize+1];
            DWORD dwBytesRead;

            //==========> 讀取文件
            BOOL bRead=::InternetReadFile(hHttpFile,
            lpszBuf,
            dwFileSize+1,
            &dwBytesRead);


            普通操作步驟:
            -------------------------------------------------------------------------
            開始 HTTP 會話。 創建 CInternetSession 對象。 初始化 WinInet 并連接到服務器。
            連接到 HTTP 服務器。 使用 CInternetSession::GetHttpConnection。 返回 CHttpConnection 對象。
            打開 HTTP 請求。 使用 CHttpConnection::OpenRequest。 返回 CHttpFile 對象。
            發送 HTTP 請求。 使用 CHttpFile::AddRequestHeaders 和 CHttpFile::SendRequest。 查找文件。如果沒有找到該文件,則返回 FALSE。
            從文件中讀取。 使用 CHttpFile。 使用您提供的緩沖區讀取指定數目的字節。
            處理異常。 使用 CInternetException 類。 處理所有常見的 Internet 異常類型。
            結束 HTTP 會話。 處置 CInternetSession 對象。 自動清理打開的文件句柄和連接。

            posted on 2007-05-08 15:40 我風 閱讀(1005) 評論(1)  編輯 收藏 引用

            FeedBack:
            # re: 一些http操作函數
            2007-08-31 19:29 | AAAAAAAAAAAAAAAAAAAAA
            a   回復  更多評論
              
            <2007年9月>
            2627282930311
            2345678
            9101112131415
            16171819202122
            23242526272829
            30123456

            常用鏈接

            留言簿(12)

            隨筆分類

            隨筆檔案

            文章檔案

            相冊

            收藏夾

            C++

            MyFavorite

            搜索

            •  

            積分與排名

            • 積分 - 327105
            • 排名 - 75

            最新評論

            閱讀排行榜

            評論排行榜

            亚洲欧美一级久久精品| 伊人热人久久中文字幕| 综合久久一区二区三区| 亚洲精品白浆高清久久久久久| 久久中文骚妇内射| 午夜不卡888久久| 久久SE精品一区二区| 久久99国产精品99久久| 亚洲欧美日韩久久精品| 国产精品久久久久久| 欧美与黑人午夜性猛交久久久 | 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 国产精品天天影视久久综合网| 青青热久久国产久精品| 人妻无码久久一区二区三区免费| 久久人妻少妇嫩草AV蜜桃| 久久精品中文闷骚内射| 久久强奷乱码老熟女网站| 久久国产成人午夜aⅴ影院 | 久久久久18| 精品久久久久久综合日本| 午夜人妻久久久久久久久| 亚洲精品国产第一综合99久久| 精品无码人妻久久久久久| 国产精品久久永久免费| 亚洲精品美女久久久久99| 久久久久亚洲国产| 亚洲天堂久久久| 思思久久精品在热线热| 日韩亚洲国产综合久久久| 久久精品成人| 欧美精品丝袜久久久中文字幕| 亚洲午夜久久影院| 91精品国产91久久久久久蜜臀| 国产成人久久AV免费| 久久久久久九九99精品| 俺来也俺去啦久久综合网| 97久久国产亚洲精品超碰热| 国产精品久久久久aaaa| 久久青青草原综合伊人| 观看 国产综合久久久久鬼色 欧美 亚洲 一区二区 |