Altova UModel 2024 Enterprise Edition

Um die COM API aufrufen zu können, muss in Ihrer Applikation (oder Ihrem Skript) eine neue Instanz des Application-Objekts erstellt werden. Anschließend können Sie beginnen, die Funktionalitäten von UModel zu verwenden. Normalerweise werden Sie entweder ein vorhandenes Dokument öffnen, ein neues erstellen oder das aktive Dokument (IDocument) aufrufen. IDocument entspricht einem UModel-Projekt. Sie können darüber Unterprojekte inkludieren, Dokumentation generieren, Modell und Code miteinander synchronisieren, während Sie darüber Zugriff auf die Haupt-UMLData-Objekte erhalten, siehe auch Objektmodell.

 

Anmerkung:Bei der Implementierung eines UModel IDE Plug-in ist es nicht nötig, eine Instanz das Applikationsobjekts zu erstellen, da UModel bereits ausgeführt wird und die aktuelle Instanz des Applikationsobjekts von IApplication als Parameter für alle wichtigen Methoden von IUModelPlugIn bereitgestellt wird.

 

Voraussetzungen

Um das UModel COM-Objekt in Ihrem Visual Studio-Projekt verfügbar zu machen, fügen Sie eine Referenz zur UModel Typbibliotheksdatei (.tlb) hinzu, siehe Referenzieren der UModel-Typbibliothek. Unter C:\Benutzer\<Benutzername>\Dokumente\Altova\UModel2024\UModelExamples\API\C# finden Sie einen UModel API-Beispielclient.

 

In Java steht die UModel API über Java-COM Bridge-Bibliotheken zur Verfügung. Sie finden diese Bibliotheken im UModel Installationsordner: C:\Programme (x86)\Altova\UModel2024\JavaAPI (Beachten Sie, dass dieser Pfad gilt, wenn ein 32-Bit-UModel auf 64-Bit-Windows ausgeführt wird. Passen Sie den Pfad andernfalls entsprechend an).

 

AltovaAutomation.dll: ein JNI Wrapper für Altova Automation Server

AltovaAutomation.jar: Java-Klassen für den Zugriff auf Altova Automation Server

UModelAPI.jar: Java-Klassen, die den Wrap für die UModel Automation-Schnittstelle bilden

UModelAPI_JavaDoc.zip: eine Javadoc-Datei mit der Hilfe zur Java API

 

Anmerkung: Um direkt Zugriff auf den die Java API zu haben, müssen sich die .dll- und .jar-Dateien im Java classpath befinden.

 

Unter C:\Benutzer\<Benutzername>\Dokumente\Altova\MapForce2024\UModelExamples\API\Java steht ein UModel API-Beispiel-Client in Java zur Verfügung.

 

In Skriptsprachen wie JScript oder VBScript kann das UModel COM-Objekt über den Microsoft Windows Script Host aufgerufen werden (siehe https://msdn.microsoft.com/en-us/library/9bbdkx3k.aspx). Solche Skripts können mit einem Text-Editor geschrieben werden und müssen nicht kompiliert werden, da sie von dem mit Windows verpackten Windows Script Host ausgeführt werden. (Um zu überprüfen, ob der Windows Script Host ausgeführt wird, geben Sie in der Befehlszeile wscript.exe /? ein). Unter C:\Benutzer\<Benutzername>\Dokumente\Altova\MapForce2024\UModelExamples\API\JScript steht ein UModel API-Beispiel-Client in JScript zur Verfügung.

 

Anmerkung:Für die 32-Bit-Version von UModel ist der registrierte Name oder der programmatische Identifier (ProgId) des COM-Objekts UModel.Application. Für die 64-Bit-Version von UModel ist der Name UModel_64.Application. Beachten Sie jedoch, dass das aufrufende Programm die CLASSES Registry-Einträge in seiner eigenen Registry Hive oder -Gruppe (32-Bit oder 64-Bit) aufruft. Wenn Sie daher Skripts über die Standardbefehlszeileneingabe und mit Windows Explorer auf einem 64-Bit-Windows-System ausführen, werden die 64-Bit-Registry-Einträge, welche auf die 64-Bit-Version von UModel verweisen, aufgerufen. Wenn daher sowohl UModel 32-Bit als auch die 64-Bit-Version installiert ist, ist eine spezielle Behandlung erforderlich, damit die 32-Bit-Version von UModel aufgerufen wird. Angenommen, der Windows Skripting Host ist das aufrufende Programm, so gehen Sie folgendermaßen vor:

 

1.Wechseln Sie in das Verzeichnis C:\Windows\SysWOW64.

2.Geben Sie in der Befehlszeile wscript.exe gefolgt vom Pfad zum gewünschten Skript ein, z.B:

 

C:\Users\...\Documents\Altova\UModel2024\UModelExamples\API\JScript\Start.js

 

Richtlinien

Es sollten in Ihrem Client Code die folgenden Richtlinien beachtet werden:

 

Behalten Sie Referenzen auf Objekte nicht länger im Arbeitsspeicher, als notwendig. Wenn ein Benutzer zwischen zwei Calls Ihres Client eine Eingabe macht, besteht keine Garantie, dass diese Referenzen noch gültig sind.

Denken Sie daran, dass bei einem Absturz Ihres Client Code Instanzen von UModel möglicherweise noch im System verbleiben. Nähere Informationen, wie man Fehlermeldungen vermeidet, finden Sie unter Behandlung von Fehlern.

Geben Sie Referenzen explizit frei, wenn Sie Sprachen wie C oder C++ verwenden. In C# und Visual Basic können Sie die Speicherbereinigung mit Hilfe von GC.Collect() erzwingen.

UModel API-Collections sind Null-basiert. So wird etwa mit der Anweisung myPackage.InsertPackagedElementAt(0, "Interface"); eine neue Schnittstelle als erstes Child des Pakets eingefügt.

© 2018-2024 Altova GmbH