VC++通过HTTP方式获取网页源代码

来源:互联网 发布:java 布尔类型 编辑:程序博客网 时间:2024/05/16 15:18
在浏览网页的时候,我们通过右键操作即可查看网页的源代码,这个功能要是在VC++中该如何实现呢?下面我们就来看看如何在VC++中查看网页的源代码。

CStdioFile* OpenURL( LPCTSTR pstrURL, //准备打开的URL地址
                 DWORD dwContext = 1, //上下文ID
                 DWORD dwFlags = INTERNET_FLAG_TRANSFER_ASCII, //标志位
                 LPCTSTR pstrHeaders = NULL, //发送到服务器的数据头
                 DWORD dwHeadersLength = 0 );//发送到服务器的数据头长度

其中dwFlags可以为:
•INTERNET_FLAG_RELOAD 强制重读数据
•INTERNET_FLAG_DONT_CACHE 不保存到缓存
•INTERNET_FLAG_TRANSFER_ASCII 使用文本数据
•INTERNET_FLAG_TRANSFER_BINARY 使用二进制数据

上面的函数OpenURL就是本文的主角了,而OpenURL是CInternetSession类的一个成员函数,CInternetSession又是跟WinInet混的,因此我们要包含下面的头文件:

#include <afxinet.h>

  说了这么多,好像还没说怎么用啊,别急这就来!

C++语言:知蚁博客 程序设计
try
{
CInternetSession sess;//建立会话
CHttpFile *pF= (CHttpFile*)sess.OpenURL(_T(“http://www.baidu.com”));//打开网址

CString strData,strAllData;
while(pF->ReadString(strData))//读取数据
{
strAllData +=\r\n;
strAllData +=strData;
}
pF->Close();
sess.Close();

MessageBox(strAllData,_T(“VC++通过HTTP方式获取网页源代码 水石居(http://www.letuknowit.com)”));
}
catch(CException*e)
{
MessageBox(_T(“获取数据失败”),_T(“水石居提示”));
}

  就这点?对,就这点!你可以将上面这段程序放到自己的程序中试试,放在Button的处理函数、菜单响应函数之类的地方都可以的啦!别忘了加头文件。

原创粉丝点击