Was ist das OCX-Dateiformat?
.ocx-Dateien sind mit dem ActiveX-Steuerungsmodul für das Microsoft Windows-Betriebssystem verknüpft. Das Format entstand 1994 als OLE Custom Controls und wurde 1996 in ActiveX Controls umbenannt. Strukturell ist eine .ocx-Datei eine kompilierte Windows PE-Binärdatei - im Grunde eine .dll, die mit dem MZ-Magic-Header beginnt und COM-Steuerungsschnittstellen offenlegt, einschließlich des obligatorischen DllRegisterServer-Exports.
ActiveX ist ein Software-Framework zur Verwaltung von Komponenten, die von Anwendungen verwendet werden, welche in Programmiersprachen entwickelt wurden wie:
- Visual Basic,
- C++,
- Delphi,
- PowerBuilder.
In .ocx-Dateien gespeicherte Steuerelemente ermöglichen einen schnellen und effizienten Datenaustausch zwischen verschiedenen unter Windows laufenden Anwendungen. Sie erleichtern die Informationsübertragung zwischen Elementen und ermöglichen eine schnelle Anwendungsentwicklung. Jedes Steuerelement wird in der Windows-Registrierung registriert, indem regsvr32 datei.ocx ausgeführt wird; zum Aufheben der Registrierung verwenden Sie regsvr32 /u datei.ocx. Steuerelemente können auch verwendet werden, um Komponenten in verschiedenen Umgebungen auszuführen - zum Beispiel als In-Page-Webbrowser-Applets -, obwohl diese Verwendung heute als veraltet gilt, da die ActiveX-Unterstützung in Microsoft Edge eingestellt und mit dem Internet Explorer in den Jahren 2022-2023 ausgemustert wurde. Eine eingebettete .tlb-Typbibliothek innerhalb des .rsrc-Abschnitts beschreibt die Schnittstellen des Steuerelements für Host-Tools.
Es wird empfohlen, ActiveX aufgrund der bekannten Sicherheitsrisiken, denen es das System aussetzt, zu deaktivieren. Das Deaktivieren von ActiveX verhindert, dass .ocx-Dateien von Browsern oder alten Host-Anwendungen geladen werden. Für die neue Windows-Entwicklung haben WinForms- und WPF-Steuerelemente das ActiveX-Modell effektiv ersetzt.
Sicherheit
RISIKO: HIGHEine OCX ist ausführbarer Code, der sich tief in Windows registriert (COM/CLSID), daher ist Vorsicht geboten. Risiken: Bösartige oder manipulierte ActiveX-Steuerelemente können mit den Privilegien der Host-App ausgeführt werden, und ActiveX war historisch gesehen ein Hauptvektor für Browser-Drive-by-Angriffe im Internet Explorer (jetzt im Ruhestand). „OCX-Download“-Seiten sind ein klassischer Kanal für Malware/PUP und liefern meist ein Steuerelement in der falschen Version, das die App ohnehin nicht repariert. Regeln: Beheben Sie Fehler wegen fehlender OCX durch Neuinstallation des Programms, dem das Steuerelement gehört, nicht durch Herunterladen der OCX von einer Drittanbieter-Website; wenn Sie ein bekanntes Microsoft-Steuerelement (z. B. MSCOMCTL.OCX) benötigen, beziehen Sie es aus dem offiziellen Microsoft-Paket; prüfen Sie die digitale Signatur einer unbekannten OCX (Eigenschaften > Digitale Signaturen) und scannen Sie sie auf VirusTotal, bevor Sie sie registrieren. Registrieren Sie niemals OCX-Dateien, denen Sie nicht vertrauen.
Formatdetails
kurz gefasstProgramme zum Öffnen von OCX-Dateien
Technische Details
technische Spezifikation| Dateistruktur | PE (Portable Executable) Binärdatei - derselbe Container wie eine .dll; DOS-Stub + MZ-Header, PE/COFF-Header, Sektionstabelle, Code-/Daten-Sektionen und eine .rsrc-Ressourcen-Sektion |
| Magic Bytes | 0x4D 0x5A („MZ“) bei Offset 0; PE-Signatur 0x50 0x45 0x00 0x00 bei dem im DOS-Feld e_lfanew (0x3C) gespeicherten Offset |
| PE-Variante | PE32 (x86/32-Bit) oder PE32+ (AMD64/x64); DLL-Kennzeichen-Flag (0x2000) im COFF-Feld „Characteristics“ gesetzt |
| Erforderliche Exporte | DllRegisterServer, DllUnregisterServer, DllGetClassObject, DllCanUnloadNow - obligatorisch für einen selbstregistrierenden COM-Server |
| Registrierungsmechanismus | regsvr32 datei.ocx schreibt CLSID, ProgID und Typbibliotheks-GUIDs unter HKCR\CLSID\{...} in die Windows-Registrierung; regsvr32 /u entfernt diese |
| COM-Schnittstellen (UI-Steuerung) | Muss IUnknown implementieren; In-Process-UI-Steuerelemente legen zusätzlich IOleObject, IOleControl, IOleInPlaceObject und IDispatch für Scripting und VBA-Automatisierung offen |
| Eingebettete Typbibliothek | Eine kompilierte .tlb-Typbibliotheksressource ist normalerweise in der .rsrc-PE-Sektion eingebettet und beschreibt die Schnittstellen des Steuerelements für IDEs und VBA-Hosts |
| Byte-Reihenfolge | Little-endian (Intel/x86 nativ) |
| Kodierung | Binär (kompilierter nativer Code - nicht interpretiert oder textbasiert) |
| Typische Dateigröße | 20 KB - 10 MB, abhängig von der Anzahl der Steuerelemente und eingebetteten UI-Ressourcen |
| Authenticode-Unterstützung | Optionale digitale Authenticode-Signatur zur Herausgeberverifizierung; das PE-Header-Feld CheckSum bietet eine grundlegende Integritätsprüfung |
| MIME-Typ | application/octet-stream (kein spezifischer MIME-Typ für .ocx registriert) |
| Host-Abhängigkeit | Kann nicht eigenständig ausgeführt werden; muss von einem COM-fähigen Host instanziiert werden: VB6 IDE, MFC/ATL-Anwendung, Office VBA-Benutzerformular oder veralteter Internet Explorer |
| Sicherheitsstatus | Gilt als hochriskant (beliebige native Codeausführung im Host-Prozess); in Microsoft Edge entfernt; mit Internet Explorer in den Jahren 2022-2023 ausgemustert |
| Vorgängerformat | Ersetzte die 16-Bit .vbx (Visual Basic Extension) Steuerelemente, die 1991 mit Visual Basic 1.0 eingeführt wurden |
| Plattformunterstützung | Nur Windows (Win32 / Win64); keine native Unterstützung auf macOS oder Linux |
| Veröffentlicht | 1994 (OLE Custom Controls / OCX); rebranded ActiveX Controls in 1996 |
| Neueste Version | N/A (tied to the COM/ActiveX model; effectively frozen, legacy on modern Windows) |
| Spezifikation | learn.microsoft.com |
OCX-Konvertierungen
Community Q&A
von Nutzern gefragtNoch keine Fragen - stellen Sie die erste Frage zu OCX-Dateien.