ocx

ocx

OCX 是對象類別擴充組件(Object Linking and Embedding (OLE) Control Extension);是可執行文件的一種,但不可直接被執行;是 ocx 控制項的擴展名,與 .exe、.dll 同屬於PE文件。

如果你用過 Visual Basic 或者 Delphi 一類的可視化編程工具,那麼對控制項這個概念一定不會陌生,就是那些工具條上的小按鈕,如 EditBox,Grid,ImageBox,Timer 等等。每個控制項都有自己的事件、方法和屬性。

使用了控制項的編程非常容易。在程序的設計階段可以設置一些屬性,如大小,位置,標題(caption)等等,在程序運行階段,可以更改這些屬性,還可以針對不同的事件,調用不同的方法來實現對該控制項的控制。控制項就好像一塊塊的積木,程序要做的事只是將這些積木搭起來。控制項的最大好處是可以重複使用,甚至可以在不同的編程語言之間使用。例如,你可以在 VB 中嵌入用 VC 開發的控制項。

詳細信息


控制項的本質是微軟公司的對象鏈接和嵌入(OLE)標準。由於它充分利用了面向對象的優點,使得程序效率得到了很大的提高,從而得到了廣泛的應用。國外有很多公司就是專門製作各種各樣控制項的。控制項的最早形式是以.VBX的格式出現的,後來變成了.OCX。由於Internet的廣泛流行,微軟公司推出了ActiveX技術,就是從OLE發展起來的,加入了WWW上的功能。所以目前最流行的是ActiveX控制項。
ActiveX控制項.ActiveX控制項是可重用的軟體組件。使用它可以很快地在網路應用程序、桌面應用程序、以及開發工具中加入特殊的功能。ActiveX控制項的使用者可以無需知道這些組件是如何開發的,便可以完成網頁或應用程序的設計。
對象鏈接和嵌入用戶控制項(OCX)是一種可以由在微軟的Windows系統中運行的應用軟體創建使用的特殊用途的程序。OCX提供操作滾動條移動和視窗恢復尺寸的功能。如果你有Windows系統,你會發現在你的Windows地址錄里有大量OCX文件名後綴的文件。對象鏈接和嵌入(OLE)被設計來支持混合文檔(包含多種資料類型,比如文本、繪畫圖像、聲音、動畫)。Windows桌面就是一個混合文檔的範例,微軟使用OLE來建立的。OLE和組件對象模型(COM繼OLE后的更常用的概念)支持“即插即用”程序的發展,“即插即用”程序在系統中可以用任何語言寫入並可以由任何應用程序動態地使用。這些程序被認為是他們在其上運行的container的組件和應用程序。這種基於組件的近似應用程序的發展縮減了程序調試時間並改善了程序的性能和品質。Windows應用發展程序(比如powerbuilder和Microsoft Access)具有OCX的優勢。

註冊方式


ocx控制項的安裝方式有很多種,這裡介紹最簡單的一種。
步驟:
1.進入開始,點擊運行。
2.在出現的框中鍵入regsvr32 C:\xxxx.ocx 。(XXXX為控制項名, C:\為目錄))( regsvr32E:\控制項的製作\myOcxTest\Debug\myOcxTest.ocx)
3.點擊確認后等待出現提醒註冊成功即可。
oca 文件
Oca文件不是控制項,其中保存Ocx控制項的屬性
ocx的註銷
1.進入開始,點擊運行。
2.在出現的框中鍵入regsvr32 /u C:\xxxx.ocx 。(XXXX為控制項名, C:\為目錄)( regsvr32 /u E:\控制項的製作\myOcxTest\Debug\myOcxTest.ocx)
3.點擊確認后等待出現提醒註銷成功即可。

可能問題


同一個OCX的多個控制項在同一窗體上會出現可能的問題,主要原因是不能有全局變數(或共享數據) ,應該盡量定義成類的成員變數,全局變數在同一個進程中要被共享的。