WinHttp之获取网站首页源码2

xiaoxiao2021-02-28  149

先附上WinHttp常用命令官方网址:点击打开链接

本文实例化COM组件的方法采用:import+智能指针包装类的方法,所以要要将WinHttp.dll (import)引入进来。

一、获取网页源码步骤:

1、COM组件初始化; 2、定义WinHttp对象指针; 3、创建并实例化WinHttp组件; 4、调用Open方法打开连接; 5、调用Send方法发送请求; 6、获取ResponseText返回的文本; 7、释放WinHttp组件对象; 8、释放WinHttp对象指针; 9、卸载COM组件;

代码如下:

#import "C:\\Windows\\system32\\WinHttp.dll" no_namespace void CGetTest2Dlg::OnBnClickedBtn() { CoInitialize(NULL);//COM组件的初始化 try { IWinHttpRequestPtr pHttpReq = NULL;//定义一个IWinHttpRequest的只能指针 HRESULT hr = pHttpReq.CreateInstance(__uuidof(WinHttpRequest));//实例化智能指针 if (FAILED(hr)) { CoUninitialize(); return; } hr = pHttpReq->Open(_T("GET"),_T("http://www.cctry.com/")); if (FAILED(hr)) { CoUninitialize(); return; } hr = pHttpReq->Send(); if (FAILED(hr)) { CoUninitialize(); return; } BSTR bstr = NULL; hr = pHttpReq->get_ResponseText(&bstr); CString str = bstr; if (FAILED(hr)) { CoUninitialize(); return; } //也可以如下获取返回的内容 /*_bstr_t bStrText = pHttpReq->ResponseText; CString strText = bStrText;*/ long code = pHttpReq->Status; MessageBox(str/*strText*/); } catch (...) { MessageBox(_T("出错啦")); } CoUninitialize(); } 相应知识的学习来源于VC驿站: 点击打开链接

转载请注明原文地址: https://www.6miu.com/read-20994.html

最新回复(0)