我正在开发一个使用 CHtmlView 的应用程序。新要求意味着我希望能够从类中获取 HTML 源以解析特定标签(或者如果可能的话,只需获取标签中的信息)。如果我们使用较新的系统,这会很好,我可以使用 CHtmlView::GetSource 但它不存在。
我在网上进行了相当广泛的搜索,但对大多数 Windows 编程来说还是很陌生,还没有实现任何有用的东西。
因此,如果有人有一个如何在不使用 GetSource 的情况下从 CHtmlView 中提取 HTML 的示例,我将不胜感激。我试过了
BSTR bstr;
_bstr_t * bstrContainer;
HRESULT hr;
IHTMLDocument2 * pDoc;
IDispatch * pDocDisp = NULL;
pDocDisp = this->GetHtmlDocument();
if (pDocDisp != NULL) {
hr = pDocDisp->QueryInterface (IID_IHTMLDocument2, (void**)&pDoc);
if (SUCCEEDED(hr)) {
if (pDoc->toString(&bstr) != S_OK) {
//error...
} else {
bstrContainer = new _bstr_t(bstr);
size = (bstrContainer->length()+1)*2;
realString = new char[size];
strncpy(realString, (char*)(*bstrContainer), size);
}
} else {
//error
}
pDocDisp->Release();
}
但它主要只是在 realString 中给了我“[object]”。就像我说的,Windows 新手。
任何帮助表示赞赏。