COM steht für das Microsoft Component Object Model.
COM-Objektreferenzen werden vielfältig benötigt, zum
- Zugriff auf interne Objekte und deren Events des TCE-Servers
- Zugriff auf Objekte und deren Events des TCE-Clients
- Zugriff auf externe Objekte und deren Events, welche über Typbibliotheken eingebunden werden
- Zugriff auf Objekte und Events externer Applikationen, welche über eine COM-Typbibliothek verfügen
Eine COM-Objektreferenz wird gebildet über einen Namen einer Typbibliothek und einen COM-Klassennamen:
Beispiel:
Beispiel für den Zugriff auf das Server-Objekt des TCE-Servers, um Events des Objektes empfangen zu können
Die COM-Referenz wird im oben gezeigten Bild über den Typbibliotheks-Namen TCEServer und dem Klassennamen Server gebildet. Durch die Initialisierung mit dem globalen Server-Objekt stehen an der COM-Referenz Events zur Verfügung, wenn der Schalter Events verwenden eingeschaltet ist.
COM-Referenzen können auch für lokale Variablen gebildet werden:
Function Load(ByVal xml As String) As Void
Dim DOM As New MSXML2.DOMDocument
On Error Resume Next
If xml <> "" Then
DOM.loadXML(xml)
Else
DOM.loadXML(constDefaultXML)
End If
DefaultCalendar := DOM.selectSingleNode("UserSettings/DefaultCalendar").nodeTypedValue
DefaultTask := DOM.selectSingleNode("UserSettings/DefaultTask").nodeTypedValue
End Function
In diesem Fall wird eine COM-Objektreferenz über die Typbibliothek MSXML2 und den Klassennamen DOMDocument gebildet. Da es sich um eine Klasse handelt, aus der Objekte erzeugt werden können, kann ein neues Objekt in der Variable DOM mit dem New-Operator erzeugt werden:
Dim DOM As New MSXML2.DOMDocument
Bevor COM-Typbibliotheken in TCE verwendet werden können, müssen sie in den Wissensbasis-Eigenschaften für die Verwendung registriert werden. Dabei muss festgelegt werden, für welche Bereiche die Registrierung erfolgt:
- Typelib: Die Registrierung erfolgt für die Programmierung der Anwendung
- Steuerelement: Die Registrierung erfolgt für clientseitige Steuerelemente
- Client: Die Registrierung erfolgt für clientseitige COM-Objekte
Beispiel für eine umfangreiche Registrierung von Typbibliotheken
TCE unterstützt nur COM-Klassen, welche über eine IDispatch-Schnittstelle verfügen.
COM-Objektreferenzen verfügen über Standard-Attribute, welche mit dem !-Operator angesprochen werden können.
DOM!MarkChanged()
Attribut-Eigenschaften und Funktionen:
Standard-Attribute:
Weitere Beispiele für COM-Objektreferenzen
ApplicationPath (COM-Objektreferenzen)