您的位置:首页 > Web前端

MFC调用MS Internet Transfer Control

2012-12-21 15:01 281 查看
项目中需要获取http网页内容,一开始使用了CHttpSession的方法,但是只能同步使用,网速慢了界面就卡在那里了,用户体验很不好.便考虑使用异步http的方式,Winnet的异步方式太繁琐,时间不允许去深究.突然发现vb中能使用MS ITC控件,便想到MFC中也能用.可是调用Execute方法时不会传参了,网上清一色vb的教程,摸索了半天,实现方法如下:

1:关联一个ITC的控件变量m_InetCtrl

2:构造http请求

TCHAR* aurl=_T("http://www.baidu.com");
_variant_t url=aurl;
_variant_t method=_T("GET");
m_intCtrl.Execute(url,method,url,url);3:在响应事件中接收
if (State==CInet1::icResponseCompleted)
{
_variant_t var;
LONG len=0;
COleVariant ret=m_intCtrl.GetChunk(&len,var);
USES_CONVERSION;
CString strLen=OLE2A(ret.bstrVal);;
AfxMessageBox(strLen);
}

搞定收工,
BTW:VC真是麻烦啊
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: