• <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>
            <2006年7月>
            2526272829301
            2345678
            9101112131415
            16171819202122
            23242526272829
            303112345

            統計

            • 隨筆 - 44
            • 文章 - 0
            • 評論 - 86
            • 引用 - 0

            常用鏈接

            留言簿(6)

            隨筆分類(31)

            隨筆檔案(44)

            Mining

            最新隨筆

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            小覷IE 瀏覽器ActiveX 控件創建過程

            1. Activex 控件是怎么安裝的
            一個HTML 中嵌入控件的例子

            <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="400" height="300">
            <param name="movie" value="flash/flash.swf">
            <param name="quality" value="high">
            <embed src="flash/flash.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="400" height="300"></embed>
            </object>

            當用IE 打開這個頁面的時候, IE 首先根據 classid 在注冊表中(HKEY_CLASS_ROOT)查找其安裝信息, 如果未找到, 則IE 根據codebase 去看是否有對應的控件存在; 如果還是不行, 則會一些控件注冊服務器聯系(列表在 HKLM\Software\Microsoft\Windows\CurrentVersion\Internet Settings\CodeBaseSearchPath 可以找到 ), 一般是 http://activex.microsoft.com/objects/ocget.dll , http://codecs.microsoft.com/isapi/ocget.dll  , 然后服務器會告訴IE 從哪里去下載. 

            FROM : http://oreilly.com/catalog/malmobcode/chapter/ch11.html


            2. ActiveX 控件是如何啟動的
            創建一個控件有很多種方法
            CoCreateInstance, CoGetInstanceFromFile, CoGetInstanceFromIStorage
            CoCreateInstanceEx
            CoGetClassObjectFromURL , CoGetClassObject 
            CoGetObject, DllGetClassObject 等
            基本調用順序好像是
            (CoGetInstanceFromFile, CoGetInstanceFromIStorage ) -> CoCreateInstance
            CoCreateInstanceEx
            CoGetClassObjectFromURL -> CoGetClassObject 
            其他沒有測試過... :9

            IE 創建控件的時候會調用 CoGetClassObjectFromURL -> CoGetClassObject 的順序進行, 而不是直接調用(CoCreateInstance 或者 CoCreateInstanceEx) , 但是免不了控件會自己調用 CoCreateInstanceEx, 比如Real 控件在創建的時候會調用Dx 的組件等.

            posted on 2008-07-30 19:55 泡泡牛 閱讀(2237) 評論(2)  編輯 收藏 引用 所屬分類: Develop

            評論

            # re: 小覷IE 瀏覽器ActiveX 控件創建過程 2008-08-06 16:56 windows7

            哇,真多,ActiveX我才剛剛接觸,謝謝博主的好文。。。。
              回復  更多評論    

            # re: 小覷IE 瀏覽器ActiveX 控件創建過程 2008-08-06 16:58 在職研究生

            博主,ActiveX難學嗎???是不是要結合js呢?????
              回復  更多評論    
            热久久国产精品| 久久综合给合久久狠狠狠97色 | 久久香蕉一级毛片| 国产精品久久久久影院色| 亚洲国产成人久久精品动漫| 久久久久97国产精华液好用吗| 欧美日韩精品久久久免费观看| 久久久久AV综合网成人| 久久93精品国产91久久综合| 亚洲αv久久久噜噜噜噜噜| 国产精品久久久久影院嫩草| 欧美日韩精品久久免费| 国产亚洲成人久久| 人妻久久久一区二区三区| 久久久精品国产亚洲成人满18免费网站| 伊人久久大香线蕉av不变影院 | 少妇人妻综合久久中文字幕| 99久久99久久精品国产片| 人妻精品久久无码区| 久久久久久午夜精品| 国产91久久综合| 亚洲欧美日韩精品久久| 久久亚洲私人国产精品| 狠狠色丁香婷婷久久综合五月| 一本久久a久久精品综合夜夜| 亚洲色婷婷综合久久| 午夜精品久久久久久影视riav| 狠狠久久综合| 精品人妻伦一二三区久久| 青青热久久综合网伊人| 久久97精品久久久久久久不卡| 伊人久久大香线蕉av一区| 国产美女亚洲精品久久久综合| 久久久久国产视频电影| 伊人久久精品线影院| 国产精品丝袜久久久久久不卡| 久久九九亚洲精品| 青青草原综合久久| 久久婷婷五月综合成人D啪| 国产精品九九久久免费视频 | 国内精品综合久久久40p|