更多精彩内容,请见:http://www.16boke.com
(1) 读取页面元素的onclick属性值
html代码:
<a id='linka' οnclick="alert('ok');">链接</a>
取出item身上onclick属性的值:alert('ok');
实现:
IHTMLElement *item;// 已经找到该元素
CComQIPtr<IHTMLElement> spElem(item);
VARIANT var;
spElem->get_onclick(&var);
CComQIPtr<IDispatch> spDisp(var.pdispVal);
DISPID dispId = 0;
OLECHAR *szName = L"toString";
spDisp->GetIDsOfNames(IID_NULL, &szName, 1, LOCALE_SYSTEM_DEFAULT, &dispId);
DISPPARAMS params;
memset(¶ms, 0, sizeof(params));
VARIANT varRet;
spDisp->Invoke(dispId, IID_NULL, LOCALE_SYSTEM_DEFAULT, DISPATCH_METHOD, ¶ms, &varRet, NULL, NULL);
CString k= CString(varRet.bstrVal);
(2)禁止重定向并获取url重定向后Location头指定的重定向目标
禁止重定向用INTERNET_FLAG_NO_AUTO_REDIRECT
DWORD dwFlags = INTERNET_FLAG_TRANSFER_ASCII|INTERNET_FLAG_NO_AUTO_REDIRECT;
cFile = (CHttpFile*)Sess.OpenURL(url,1,dwFlags);
获取url重定向后Location头指定的重定向目标
CString cstrLocation;
cFile->QueryInfo(HTTP_QUERY_RAW_HEADERS_CRLF, cstrLocation);
更多精彩内容,请见:http://www.16boke.com