CInternetSession類OpenURL函數異常問題

       最近在做項目過程中,用到了讀取網頁(現在以百度首頁爲例)上的數據,代碼如下:

       CInternetSession session("HttpClient");   
       char * url = "www.baidu.com";   
       CHttpFile* pfile = (CHttpFile *)session.OpenURL(url);

       在CInternetSession類OpenURL函數一直爆發異常,經查看,GetLastError報錯12006,經查閱MSDN才明白:

       CStdioFile* OpenURL( LPCTSTR pstrURL

                                                 , DWORD_PTR dwContext = 1

                                                 , DWORD dwFlags = INTERNET_FLAG_TRANSFER_ASCII

                                                 , LPCTSTR pstrHeaders = NULL

                                                 , DWORD dwHeadersLength = 0 );

        對第一個參數的解釋爲:A pointer to the name of the URL to begin reading. Only URLs beginning with file:, ftp:, gopher:, or http: are supported. ASSERTS if pszURL is NULL.

       恍然大悟,將代碼修改爲:

       CInternetSession session("HttpClient");   
       char * url = "http://www.baidu.com";   
       CHttpFile* pfile = (CHttpFile *)session.OpenURL(url);

       最終程序運行正常。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章