SHDocVw::IShellWindowsPtr m_spSHWinds;
if (m_spSHWinds == NULL) {
if (m_spSHWinds.CreateInstance(__uuidof(SHDocVw::ShellWindows)) != S_OK) {
MessageBox("Failed"); CoUninitialize(); EndDialog(1);
}
}
if (m_spSHWinds) {
int n = m_spSHWinds->GetCount();
for (int i=0; iItem(v);
SHDocVw::IWebBrowser2Ptr spBrowser(spDisp);
if (spBrowser) {
_bstr_t bsName = spBrowser->GetLocationName();
int nPos = m_ctrlIE.InsertItem(0, bsName);
spBrowser->AddRef();
m_ctrlIE.SetItemData(nPos, (DWORD)spBrowser);
}
}
}
pBrowser->Refresh(); // pBrowser 為 SHDocVw::IWebBrowser2Ptr
取得 IWebBrowser2 後可進一步讀取/設定元素內容等更多控制,參考 IWebBrowser2、IHTMLDocument2 等介面。
Win2000 Professional + VC6.0 + SP5 + Platform SDK 2001.8。若編譯失敗請更新 Platform SDK。