關於網頁呼叫ActiveX控制項的補充

2021-04-23 20:48:32 字數 892 閱讀 3426

實現了isafeobject介面或是使用分組管理器(component categories manager

)標記安全控制項

前提:

1。在ax控制項中已經實現了isafeobject介面(或是修改了登錄檔)

3。檢視登錄檔,發現我的cab中的控制項(ocx)及其依賴的dll已經成功的註冊到機器中。(這點很重要,因為這說明了我的cab沒有問題,即使在本機上用regsvr32手動註冊這台機器也無法使用控制項)

4。控制項的簽名是使用工具「makecert.exe」和「cert2spc.exe」工具生成的採用的「不安全的根證書」生成的簽名證書和金鑰,並使用了「signcode.exe」對控制項進行了簽名。

症狀:

無法在某些xp sp2 的ie上顯示控制項(實際上控制項已經註冊成功了)

結果:

上網搜尋後,有微軟關於xp sp2的說明,說是sp2補丁導致很多控制項的無法正常的使用,提供了乙個辦法,將訪問伺服器的站點新增到「受信任的站點」(ie的「internet選項」中,注意不要選擇「對改區域內的所有站點都要求驗證(https://)」),這時某些有問題的sp2機器上顯示出來。

疑問猜想:

1。有些機器可以顯示,有些不能顯示,這可能和系統的某些未知補丁有關係

2。花錢註冊了控制項簽名是否能夠解決這一問題

3。在有的(只有一台,正版xp sp2, 經常公升級補丁),使用regsvr32 來註冊ocx都不可以?

記得winxpsp2裡面actievx的限制更加嚴格,沒有數字簽名的控制項會被禁用。對實現了iobjectsafety的控制項也會有警告參考http://verisign.com/products-services/security-services/code-signing/digital-ids-code-signing/index.html

獲取網頁呼叫的ActiveX控制項的方法

在研究掛馬網頁的時候,為了獲得乙個網頁呼叫的activex的函式,想出了如下方法 hook cogetclassobject和cogetclassobjectfromurl,ie建立acitivex的時候都呼叫這兩個函式。函式原型如下 cogetclassobjectfromurl refclsid...

C 呼叫ActiveX控制項

背景 最近專案中需要用到activex控制項,專案是在.net平台下開發的。因此就直接在專案中新增了對activex控制項的引用,新增引用成功。在 中例項化類的例項也沒有問題,但在呼叫其方法或屬性時總是丟擲 未處理 comexception 異常。方法一 1 在系統中註冊該ocx控制項,命令 reg...

在網頁中呼叫ActiveX

最主要的就是這個了,在html中加入object的標籤 1.如果是用vc開發,classid等資訊可以從控制項工程的.odl檔案來找 我的控制項如下 2.如果是用visual studio,可以用它自帶的小工具ole view 3.如果控制項已經被註冊了,可以直接檢視嘍 在js裡面呼叫ocx的函式則...