首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> VC >> 關於VC++

如何控制 IE 瀏覽器行為 — 以 Refresh 為例

     編輯:關於VC++

步驟 1:建立 ShellWindows 物件

SHDocVw::IShellWindowsPtr m_spSHWinds;
if (m_spSHWinds == NULL) {
    if (m_spSHWinds.CreateInstance(__uuidof(SHDocVw::ShellWindows)) != S_OK) {
        MessageBox("Failed"); CoUninitialize(); EndDialog(1);
    }
}

步驟 2:列舉所有開啟的 IE 視窗

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);
        }
    }
}

步驟 3:控制 IE (以重新整理為例)

pBrowser->Refresh(); // pBrowser 為 SHDocVw::IWebBrowser2Ptr

取得 IWebBrowser2 後可進一步讀取/設定元素內容等更多控制,參考 IWebBrowser2、IHTMLDocument2 等介面。

編譯環境

Win2000 Professional + VC6.0 + SP5 + Platform SDK 2001.8。若編譯失敗請更新 Platform SDK。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved