Internet Explorer 3.0是第一個在網(wǎng)頁中支持ActiveX控件的網(wǎng)絡(luò)瀏覽器。 在Mosaic和 Netscape Navigator中也可以使用ActiveX plug-in for Netscape顯示 ActiveX 控件(參見網(wǎng)址 http://www.ncompasslabs.com).
2. Netscape Navigator可以顯示 ActiveX 控件嗎?
可以,在Netscape Navigator中可以使用 ActiveX plug-in for Netscape顯示 ActiveX控件。在Ncompass實(shí)驗(yàn)室的網(wǎng)址http://www.ncompasslabs.com/上可以得到測試版的plug-in。Internet Explorer 3.0和MosaicWeb瀏覽器也可以顯示 ActiveX 控件。
當(dāng)Internet Explorer 3.0遇到含有ActiveX控件(或復(fù)合控件)的網(wǎng)頁時, 首先檢查用戶的本地系統(tǒng)注冊,察看該組件是否已經(jīng)安裝在本地機(jī)上了。如果該組件已經(jīng)在本地機(jī)上, Internet Explorer 3.0顯示該網(wǎng)頁并激活控件。 如果控件還未在用戶本地機(jī)上安裝,Internet Explorer 3.0將自動地根據(jù) 開發(fā)者創(chuàng)建網(wǎng)頁時的地址定義,從網(wǎng)上找到此控件,并將它安裝到本地機(jī)上。
網(wǎng)頁開發(fā)者可以通過給控件設(shè)置 CODEBASE 屬性提供上述信息。使用ActiveX Control Pad 時,在 ObjectEditor中,可以看見一個屬性表,開發(fā)者可以很方便地利用該表設(shè)置屬性。通過設(shè)置屬性,可以定義URL地址或地址集,通過地址可以在Internet上找到并下載控件。 Internet Explorer3.0正是利用 這些地址信息,定位控件并自動下載組件的。下載之后,網(wǎng)頁就出現(xiàn)在本地機(jī)上了。在1996年7月的Microsoft Systems Journal上,"Safe Web Surfing with the Internet Component Download Service"一文詳細(xì)論述了整個 信息定位及下載過程。需要一提的是,許多Microsoft提供的控件(例如,HTML Layout Control)不需要CODEBASE 設(shè)置,因?yàn)橥ㄟ^ActiveX對象索引(ActiveX Object Index)就可以基于CLSID(控件唯一標(biāo)識符)自動找到并定位控件。
7. 組件下載時,是否通知用戶?
是的。當(dāng)一個組件需要下載時,Internet Explorer 3.0會缺省地顯示一個消息 框,通知用戶將要開始下載。用戶可以選擇終止下載或繼續(xù)下載。如果控件做過數(shù)字簽名,會提供一份數(shù)字認(rèn)證書,其中包括提供該控件的軟件供應(yīng)商名字,以及確認(rèn)該控件未被破壞的有關(guān)信息。軟件開發(fā)者在開發(fā)控件時可以做數(shù)字簽名。簽名信息由控件本身攜帶,因此在下載之前,會自動顯示數(shù)字驗(yàn)證書,在網(wǎng)頁上使用該控件的用戶不需要做任何開發(fā)工作。
9.如何對待新創(chuàng)建的新版本控件?如果用戶計算機(jī)上已經(jīng)有了老板本的控件 Internet Explorer如何知道應(yīng)該下載新版本的控件?
Internet Explorer 3.0中的組件下載服務(wù)(Component Download Service) 提供了版本控制功能,使用此項功能,新版本的控件會被自動檢測出來,并可自動下載。在1996年7月的 Microsoft Systems Journal雜志上,"Safe Web Surfing with the Internet Component Download Service"一文 詳細(xì)論述了整個版本控制過程。
ActiveX控件提供一套完整的保護(hù)機(jī)制,可以防止未經(jīng)許可的用戶在網(wǎng)頁上使用 ActiveX控件。到目前為止,已經(jīng)有一些開發(fā)工具支持這套機(jī)制,例如Visual Basic、Microsoft access、和 Internet Explorer 3.0 beta2版。 現(xiàn)有的控件授權(quán)許可證機(jī)制有兩種許可形式:開發(fā)許可證和運(yùn)行使用許可證。開發(fā)許可證允許許可證的持有者使用控件,利用VisualBasic,ActiveX ControlPad,以及其它有關(guān)的開發(fā)工具,從事以開發(fā)為目的活動。運(yùn)行使用許可證只允許許可證的持有者在已有的應(yīng)用或網(wǎng)頁中顯示控件,不允許將控件插入有關(guān)工具中,用于開發(fā)目的活動。支持許可證機(jī)制是獨(dú)立控件開發(fā)上的工作。有些控件開發(fā)商選擇了不支持許可證機(jī)制的開發(fā)策略,因此對任何用戶來說,他們開發(fā)的控件一旦被安裝到本地機(jī)上,就可以用于開發(fā)。另一些控件開發(fā)商只提供免費(fèi)的運(yùn)行許可證,而在提供開發(fā)許可證時需要收費(fèi)。需要在網(wǎng)上使用控件的用戶,應(yīng)該詳細(xì)地閱讀控件開發(fā)商提供的許可證協(xié)議,以確定自己使用控件的權(quán)限。
11.為什么有些控件,甚至包括有些Visual Basic 4.0自帶的控件,在網(wǎng)頁上 都無法用Internet Explorer 3.0顯示?
包括VisualBasic4.0中某些控件在內(nèi)的許多控件都提供了許可證機(jī)制。要在網(wǎng)上使用這些控件必須取得相應(yīng)的運(yùn)行使用許可證,并將相應(yīng)的許可證文件放在網(wǎng)頁中,否則,在用戶終端機(jī)上將無法顯示該控件。對于某一控件來說,只有控件的合法開發(fā)者,才擁有為該控件進(jìn)行“運(yùn)行許可權(quán)”授權(quán)的權(quán)利。欲知在網(wǎng)頁中獲得控件運(yùn)行許可權(quán)的詳細(xì)過程,請參見ActiveX SDK文檔中有關(guān)許可 證控制部分(在新的ActiveX Control Pad FAQ中,還有一個具體例子)。 值得一提的是,Microsoft及其第三方合作伙伴也在網(wǎng)上提供了大量的具有免費(fèi)使用權(quán)許可證的ActiveX控件。在網(wǎng)頁中使用這些控件時,不需要提交使用權(quán)許可證文件。
12.Microsoft現(xiàn)在提供哪些控件? ActiveX Control Pad及Internet Explorer 3.0中有哪些控件?
在Microsoft網(wǎng)址http://www.microsoft.com/activex/gallery/上,提供了一個ActiveX組件圖庫(ActiveX Component Gallery ),其中給出了 當(dāng)前可用控件的一個詳細(xì)列表。表1列出了 Internet Explorer 3.0中的控件, 這些控件可從MSDN庫中安裝。 值得一提的是,微軟和第三方合作伙伴正在不斷開發(fā)新的控件。其中很多控件已放在微軟的ActiveX組件庫網(wǎng)址http://www.microsoft.com/activex/gallery中。
使用ActiveX Control Pad,將這些控件插入到用戶HTML網(wǎng)頁中。按照ActiveX ControlPad聯(lián)機(jī)教程(http://www.microsoft.com/workshop/author/cpad/tutorial-f.htm)學(xué)習(xí)如何使用這些工具(參見ActiveXControlPad在http://www. microsoft.com/workshop/author/cpad/的網(wǎng)頁)。
HTML Layout控件支持由W3C公布的擴(kuò)展HTML,允許在網(wǎng)頁上精確定位對象。原先,HTML不允許網(wǎng)頁開發(fā)者使用X、Y坐標(biāo)在網(wǎng)頁上精確定位元素,也不允許疊蓋對象。新增加的的“2-D”布局功能,使開發(fā)者可以完成更復(fù)雜的設(shè)計,為用 戶開發(fā)出更好的網(wǎng)絡(luò)應(yīng)用提供了支持。通過實(shí)現(xiàn)新的W3C HTML擴(kuò)展,HTML Layout控件為在Internet Explorer 3.0中顯示的ActiveX控件提供了更先進(jìn) 的布局選項。HTML Layout控件是Internet Explorer 3.0的新增組件,并被集 成到Internet Explorer 3.0完全安裝版中。(HTML Layout控件也是ActiveX ControlPad的一部分,可通過MSDN庫安裝。由于提供了基于WYSIWYG頁的全幀編輯器,ActiveX Control Pad可以與HTML Layout Control相結(jié)合使用。 這使得用ActiveX控件開發(fā)先進(jìn)的二維風(fēng)格的HTML設(shè)計變得更加簡單。