vc++获取网页源码之使用类型库(TypeLib)生成包装类
1.在MFC项目名称上 右击->添加->选择Visual C++下的MFC->TypeLib中的MFC类->添加
可以从注册表表中共或是文件中根据相应的接口生成对应的包装类
效果图:

代码:
#include "CWinHttpRequest.h"
void CHttpTestDlg::OnBnClickedButton1()
{
CoInitialize(NULL); //com组件初始化
//CWinHttpRequest httpReq;
BOOL bRet;
CWinHttpRequest *pHttpReq = NULL;
pHttpReq = new CWinHttpRequest();
/*CLSID clsid;
CLSIDFromProgID(_T("WinHttp.WinHttpRequest.5.1"), &clsid);
bRet = pHttpReq->CreateDispatch(clsid);*/
bRet = pHttpReq->CreateDispatch( _T("WinHttp.WinHttpRequest.5.1")); //创建IWinHttpRequest组件
if (!bRet)
{
CoUninitialize();
return;
} COleVariant varAsync = VARIANT_FALSE;
pHttpReq->Open(_T("GET"), _T("http://www.baidu.com"),varAsync); //建立连接
VARIANT varBody = vtMissing;
pHttpReq->Send(varBody); // 发送请求
CString respStr = pHttpReq->get_ResponseText(); // 获取响应的源代码
MessageBox(respStr); // 显示 pHttpReq->DetachDispatch(); //释放组件对象
delete pHttpReq; // 释放IWinHttpRequest对象
CoUninitialize(); // 卸载com组件
}
vc++获取网页源码之使用类型库(TypeLib)生成包装类的更多相关文章
- vc++获取网页源码
1. 获取网页源码的步骤: com组件的初始化 创建WinHttpRequest对象 创建并实例化WinHttpRequest组件 调用Open方法打开连接 调用Send方法发送请求 使用Respon ...
- vc++获取网页源码之使用import+接口方式
1.使用IWinHttpRequest获取网页源码 首先要创建基于对话框的mfc应用程序 2.import+接口方式 首先导入winhttp.dll,使用IWinHttpRequest接口 #impo ...
- vc++获取网页源码之使用import+智能指针包装类
创建基于对话框的mfc应用程序 使用智能指针包装类IWinHttpRequestptr,它内部采用的是引用计数来管理对象的生命周期 代码: #import "C:\\Windows\\Sys ...
- Python爬虫学习之获取网页源码
偶然的机会,在知乎上看到一个有关爬虫的话题<利用爬虫技术能做到哪些很酷很有趣很有用的事情?>,因为强烈的好奇心和觉得会写爬虫是一件高大上的事情,所以就对爬虫产生了兴趣. 关于网络爬虫的定义 ...
- C语言之socket获取网页源码
写爬虫也许你用的是python,类似urlopen(url).read()即可获得普通的网页的源码,或者用的java的网络库加上流操作,或者其他高级语言.但你有没有想过使用C语言来实现呢?我曾经以为用 ...
- QT:轻松获取网页源码
获取网页源码的小例子,代码很简单,就不多作解释了. 不过一定要注意网页的编码问题,否则会出现乱码的!!! #include <QtCore> #include <QtNetwork& ...
- 高效获取网页源码COM
目前获取网页源码有几种方法: 1.WebClient下载页面2.HttpWebRequest发请求获取3.com组件xmlhttp获取 三者比较:WebClient代码最少,效率最慢:xmlhttp代 ...
- Python3 Selenium WebDriver网页的前进、后退、刷新、最大化、获取窗口位置、设置窗口大小、获取页面title、获取网页源码、获取Url等基本操作
Python3 Selenium WebDriver网页的前进.后退.刷新.最大化.获取窗口位置.设置窗口大小.获取页面title.获取网页源码.获取Url等基本操作 通过selenium webdr ...
- Python3.x获取网页源码
Python3.x获取网页源码 1,获取网页的头部信息以确定网页的编码方式: import urllib.request res = urllib.request.urlopen('http://ww ...
随机推荐
- 求连续数字的和------------------------------用while的算法思想
前端代码: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.as ...
- Centos7使用yum安装程序软件时提示未找到安装包解决方法
查找程序软件源,以sshd为例,假设sshd安装包无法找到,那么可以通过以下方法解决 yum provides sshd 然后我们就可以安装*.X86_64的程序软件源 例如yum install o ...
- The Microservices Workflow Automation Cheat Sheet
Written by Bernd Rücker on Dec 12 2018 in the Best Practices category. Editor’s Note: This post orig ...
- encrypt and decrypt data
https://www.cyberciti.biz/tips/linux-how-to-encrypt-and-decrypt-files-with-a-password.html Encryptin ...
- How To Use the AWK language to Manipulate Text in Linux
https://www.digitalocean.com/community/tutorials/how-to-use-the-awk-language-to-manipulate-text-in-l ...
- Bow & Arrow 学习
using UnityEngine; using System.Collections; using System.Collections.Generic; using UnityEngine.UI; ...
- 2D Platformer 学习
using UnityEngine; using System.Collections; /// <summary> /// 玩家控制 /// </summary> publi ...
- Morris
Morris /*Morris遍历树: *一:如果一个结点有左子树会到达此节点两次(第二次到达结点的时候左子树的所有结点都遍历完成),第一次遍历左子树最后 * 节点为nullptr,第二次遍历指向他自 ...
- 我 支持 使用 async await
这篇文章原来的 标题 是 <我 反对 使用 async await>, 但经过后来的一些研究, 发现 async await 是 良性 的, 所以 我把 标题 改成了 <我 支持 使 ...
- tomcat源码阅读之集群
一. 配置: 在tomcat目录下的conf/Server.xml配置文件中增加如下配置: <!-- Cluster(集群,族) 节点,如果你要配置tomcat集群,则需要使用此节点. clas ...