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>
说了这么多,好像还没说怎么用啊,别急这就来!
{
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的处理函数、菜单响应函数之类的地方都可以的啦!别忘了加头文件。