青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

牽著老婆滿街逛

嚴以律己,寬以待人. 三思而后行.
GMail/GTalk: yanglinbo#google.com;
MSN/Email: tx7do#yahoo.com.cn;
QQ: 3 0 3 3 9 6 9 2 0 .

如何對webbrowser和IE編程(一)

一、

因為工作緣故,需要研究對 IE 編程,所以翻譯了 MS 的有關資料,供參考。

 

IE 的體系

 

WebBrowser Host

首先,必須有 COM 的基礎知識,因為 IE 本身就是 COM 技術的典型應用。我們看到最上層是 WebBrowser 的宿主( Host ),也就是任何你想重用 (ReUse)webbrowser control 的應用程序,可以是 vb 程序,也可以是 vc 或者任何其他語言的應用程序。應用程序必須是可容納 activex 控件的容器。

Webbrowser control 既是 activex control 也是 activex document 的宿主。作為控件,它可以置于任何 activex 容器,作為文檔容器,它針對特殊的類型,調用特殊類型注冊的文檔 server 以顯示文檔。如果你想顯示一個 .doc 文檔, webbrowser control 裝載 windows word, ,對于 html 文檔, webbrowser 裝載名為 mshtml 的組件 ( 如圖所示 ) 。針對不同的文檔,你不需要開發不同的應用,僅僅是調用 webbrowser control 即可。

 

Shdocvw

Shdocvw.dll 包含了 webbrowser control ,控制 webbrowser control ( 就像控制其他任何 activex com 控件一樣 ) ,提供瀏覽能力給上層宿主。請注意 webbrowser control 位于第二級中。甚至 IE 也不直接而是通過 shdocw.dll 來使用 webbrowser control 的。盡管 shdocvw 提供了大部分的瀏覽功能,但是并不提供 IE 窗口的呈現功能。盡管如此, shdocvw 還是提供了簡單創建 web 應用程序的能力。之后章節會講到如何將 ie 的高級特性加入到你的應用程序。

 

MSHTML

早期的 mshtml 具有讀取顯示 html 的功能。 MSHTML 實際上是一個 active 文檔服務器,但是卻可以作為其他控件的容器(如圖中所示的)。記得嗎,你可以將 activex 控件置于 html 中,此時 mshtml 就是一個 activex 宿主,還可以控制其他的控件如 vbscript 腳本引擎和 javascript 腳本引擎, java applet ,geszhong ,各種插件 別意外, plug-in 都是按照 ie activex 規范寫的。

 

二、

WebBrowser Control Internet Explorer

二者又太多的共同點,你都是通過 COM 接口來訪問其功能。當調用 webbrowser 控件時,使用的是 webbrowser 對象,在 vc 中是使用 class ID CLSID_WebBrowser 的接口類。

當自動化 ie 時,必須建立名為 InternetExplorer 的對象, vc 等語言中使用名為 class ID CLSID_InternetExplorer 的接口類。

 

 

 

接口

webbrowser 4 個接口(如圖),其中 3 個提供全部的功能,第 4 DWebBrowserEvents2 接口暴露事件

ie4 之前,僅有 IwebBrowser IwebBrowserApp 兩個接口,且二者共享相同的功能,當開發 ie4 時候,決定加入第三個接口 IWebBrowser2 擴展 webbrowser 的功能。該接口派生于第二個接口。

 

IWebBrowser

IWebBrowser 僅僅是 WebBrowser control 的最初接口, 提供基本的例如導航 web 頁面的功能。 作為其他派生接口的基礎接口,有 8 個方法和 30 個屬性。

方法

 

  描述

 

GoBack

 

導航到歷史列表中的上一個頁面

 

GoForward

 

導航到歷史歷表中的下一個項目

 

GoHome

 

導航到缺省頁面 .

 

GoSearch

 

導航到缺省搜索頁面

 

Navigate

 

導航到一個頁面或者頁面

 

Refresh

 

刷新當前頁面

 

Refresh2

 

可以選擇刷新級別,如下:

 

 

REFRESH_NORMAL 普通刷新,并且不發送 HTTP pragma:nocache 到服務器 .

 

 

REFRESH_IFEXPIRED 僅僅當頁面失效時才發送刷新請求

 

 

REFRESH_CONTINUE 內部使用,不要在編程時使用

 

 

REFRESH_COMPLETELY 發送 HTTP pragma:nocache header 到服務器

 

Stop

 

停止當前導航

 

 

盡管WebBrowser control 提供了你需要的導航回退以及前向的方法,但是沒有提供存取歷史列表的途徑. 你可與直接通過屬性LocationUR來獲取當前頁的URL.

VB或者VC++中調用GoBack GoForward 方法式很容易的.你可以使用WebBrowser control 或者 Internet Explorer對象. 舉例來講, 在VB中你可以如下調用:

WebBrowser1.GoBack           ' Hosting WebBrowser control
InternetExplorer1.GoForward  ' Automating Internet Explorer object                    

VC++中如下:

m_webBrowser.GoBack();            // Hosting WebBrowser control

m_pInternetExplorer
->GoForward(); // Automating Internet Explorer object

盡管 GoBack GoForward  方法十分重要,當控制WebBrowser control或者自動化操作 Internet Explorer, Navigate is 卻是最重要的方法. Navigate 允許你導航到特定的你所想的web頁或者文件. Navigate 帶有5個參數, 允許你指定特定的URL以實現導航以及其他定義導航行為的信息.

第一個參數是 URL, 指示web頁的位置和名稱或者何處的文件你想裝載。 (次擦書類型是 BSTR.) URL 可以是你所使用的標準URL 協議類型的一種,例如HTTP 和 FILE, 或者是全路經文件名的本地文件系統, 例如 C:\MyFile.htm.

第二個參數, Flags, 你可指定如何或者甚至何處裝載特定的URL. (參數的類型是指向 VARIANT的指針) Flags 的值來自名為 BrowserNavConstants 的枚舉類型 ,定義于 ExDisp.h 頭文件中且有6個值, 詳細解釋見下列表. 你可以指定一個或者多個Flags 參數值 (請留意有些當前并未實現).

·         navOpenInNewWindow . 將導致一個新的窗口打開以顯示URL. 缺省,如果你在自己的應用程序中控制 WebBrowser control,這些值將導致新的 Internet Explorer 瀏覽器窗口打開.

  • navNoHistory . 指定此 URL 將不加入到 URL 歷史列表中
  • navNoReadFromCache . 當前未實現 .
  • navNoWriteToCache . 當前未實現 .
  • navAllowAutoSearch . 如果指定的 URL 未找到,自動搜索功能將試圖導航到通常的頂級域名如 .com .net .org 以找到正確的 URL 。如果失敗, URL 將傳遞給搜索引擎 .
  • navBrowserBar . 如果可能,將 URL 裝入到 Explorer 的地址欄 Bar

第三個參數 TargetFrameName. 指定web頁的哪一個frame將會發生導航. (參數的類型是指向 VARIANT的指針)此字符串將為以存在于web頁中的名字或者一個指定的值如 _top_search.  _top 值指定 URL 將被當前最頂層web頁裝入并不在任何一個當前頁中存在的frame.  _search 指示搜索面板將被打開. (該值僅在你自動化操控Internet Explorer時發生.) 如果你指定的frame名稱并未發現,, 新的Internet Explorer 窗口將被打開。

你可以使用 PostData 參數 (第四個)通過HTTPpost事務將指定特定的數據發送到服務器. (參數的類型是指向 VARIANT的指針) Post 處理用于將在HTML表單收集的數據發送到服務器。如果此參數不指定任何數據 ,  Navigate 方法將使用Get方法. 另外,如果你不指定 HTTP 協議的URL (換句話講,如果你指定例如 FILE 協議的 URL), PostData 參數將被忽略。

你也可以使用第五個參數 , Headers, 以發送 HTTP 頭信息到服務器 . (T 參數的類型是指向 VARIANT 的指針 ) 這些加入的頭信息將被 WebBrowser 控件如常發送出去 . 作為 PostData 參數 , 如果你并不指定第一個參數 , Headers 將被忽略 .

posted on 2006-06-23 21:40 楊粼波 閱讀(1652) 評論(0)  編輯 收藏 引用 所屬分類: Windows編程

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            激情一区二区三区| 欧美成年人视频网站| 欧美国产日韩一区二区| 欧美在线免费看| 亚洲欧美视频一区二区三区| 在线亚洲欧美| 亚洲美女色禁图| 亚洲无亚洲人成网站77777 | 欧美黄色aa电影| 欧美激情导航| 日韩亚洲成人av在线| 亚洲愉拍自拍另类高清精品| 欧美资源在线| 免费成人在线观看视频| 99国产精品自拍| 久久精精品视频| 欧美大片第1页| 一区二区三区高清在线| 欧美在线视频观看| 欧美韩日一区二区| 国产精品女主播| 亚洲人成毛片在线播放女女| 91久久极品少妇xxxxⅹ软件| 99re8这里有精品热视频免费| 亚洲一区二区三区在线观看视频 | 亚洲欧美在线x视频| 欧美一区二区三区免费在线看| 久久免费精品视频| 亚洲精品视频二区| 免费高清在线视频一区·| 羞羞色国产精品| 亚洲国产成人av| 亚洲特色特黄| 久久影视三级福利片| 国产精品麻豆成人av电影艾秋| 亚洲电影免费观看高清完整版在线观看 | 亚洲人成免费| 久久久精品性| 一本久道久久久| 欧美激情成人在线| 精品91免费| 午夜久久福利| 日韩视频在线你懂得| 裸体女人亚洲精品一区| 国产啪精品视频| 亚洲欧美日本国产专区一区| 欧美顶级艳妇交换群宴| 性久久久久久久久久久久| 欧美午夜免费| 亚洲午夜高清视频| 亚洲欧洲精品一区二区三区波多野1战4 | 国产一区日韩欧美| 午夜精品久久久久久久久久久久| 亚洲国产日韩一级| 麻豆精品视频在线观看| 影音先锋久久久| 欧美成人免费在线| 久久三级福利| 亚洲福利精品| 欧美二区在线播放| 美女日韩在线中文字幕| 91久久国产精品91久久性色| 美女亚洲精品| 免费不卡亚洲欧美| 日韩写真视频在线观看| 亚洲片在线观看| 欧美日韩在线视频首页| 亚洲香蕉网站| 一个人看的www久久| 国产精品久久久亚洲一区| 亚洲一区二区三区午夜| 日韩视频一区二区| 亚洲一区精品视频| 亚洲欧美日产图| 亚洲视频综合在线| 国产区二精品视| 蜜臀va亚洲va欧美va天堂 | 老鸭窝毛片一区二区三区| 久久精品青青大伊人av| 国内自拍一区| 亚洲第一精品夜夜躁人人爽| 欧美国产极速在线| 亚洲午夜精品17c| 亚洲一区二区三区四区五区午夜| 国产精品一区视频| 老司机67194精品线观看| 欧美成人a视频| 亚洲图片欧美日产| 久久成人精品视频| 亚洲美女黄色| 亚洲欧美日韩中文视频| 激情另类综合| 亚洲免费高清视频| 国产一区香蕉久久| 亚洲片区在线| 国产日韩高清一区二区三区在线| 欧美va日韩va| 国产精品夫妻自拍| 亚洲第一在线视频| 国产日韩在线视频| 亚洲七七久久综合桃花剧情介绍| 国产精品亚洲а∨天堂免在线| 欧美1区视频| 国产精品天天看| 亚洲国产欧美精品| 韩国v欧美v日本v亚洲v| 亚洲美女毛片| 亚洲电影免费在线 | 欧美韩日一区二区| 国产精品一区二区三区乱码| 欧美成人a视频| 女同一区二区| 夜夜精品视频| 黄色精品一区二区| 蜜臀av在线播放一区二区三区| 久久久www| 欧美一区二区三区精品| 免费在线看成人av| 久久久久国产精品一区| 欧美日韩视频在线第一区| 久久综合福利| 国产欧美丝祙| 一区二区不卡在线视频 午夜欧美不卡' | 亚洲第一久久影院| 午夜精品一区二区三区在线| 日韩亚洲欧美在线观看| 久久亚洲二区| 亚洲欧美一区二区激情| 日韩网站在线观看| 久久精品国产视频| 欧美视频在线不卡| 亚洲精品美女在线观看播放| 国内精品免费午夜毛片| 亚洲字幕一区二区| 午夜精品一区二区三区在线 | 亚洲日本成人| 亚洲另类视频| 欧美成人精品高清在线播放| 美女免费视频一区| 亚洲国产清纯| 久久综合九色综合网站| 欧美www视频| 亚洲国产乱码最新视频| 欧美成人黑人xx视频免费观看| 欧美成va人片在线观看| 亚洲国产精品123| 欧美激情精品久久久久久蜜臀| 亚洲国产精品久久人人爱蜜臀| 亚洲欧洲精品成人久久奇米网 | 在线视频亚洲| 性色av一区二区三区| 国产欧美一区二区三区沐欲 | 久久久一区二区三区| 免费亚洲电影在线| 亚洲韩国日本中文字幕| 欧美日韩hd| 亚洲在线中文字幕| 久久久久久有精品国产| 亚洲国产一区二区a毛片| 欧美激情一区二区三区高清视频 | 亚洲天堂成人在线观看| 国产日韩1区| 欧美成人午夜激情| 一区二区欧美视频| 久久综合久久综合九色| 亚洲精品乱码久久久久久| 欧美人成免费网站| 欧美一区二区高清在线观看| 欧美1区2区3区| 中文国产一区| 好看不卡的中文字幕| 欧美精品一卡| 久久精品国产亚洲精品| 亚洲国内精品在线| 久久精品国产成人| 亚洲最新视频在线| 一区二区三区在线高清| 欧美日本韩国一区二区三区| 香蕉视频成人在线观看 | 性久久久久久久| 亚洲激情女人| 国产嫩草影院久久久久| 欧美—级高清免费播放| 欧美一区二区免费观在线| 一区二区三区高清不卡| 日韩亚洲在线| 午夜欧美不卡精品aaaaa| 狠狠色综合网站久久久久久久| 欧美激情第五页| 亚洲欧美在线一区| 亚洲国产精品一区二区第一页| 亚洲在线观看| 日韩亚洲在线| 91久久夜色精品国产九色| 国产精品久久77777| 欧美日本三区| 欧美—级在线免费片| 裸体一区二区三区| 久久精品国内一区二区三区| 亚洲一区二区三区免费视频|