Word-Funktionen in .NET-Anwendungen nutzen

Zwar baut die Microsoft Office Suite nach wie vor auf VBA und COM auf, aber dank der Interoperabilität von .NET und COM kann man ihre Funktionen auch in .NET-Code einsetzen. So lassen sich durch die Einbeziehung der vielen in den Word-Produkten verfügbaren Funktionen in die eigene Anwendung leistungsfähigere Applikationen schaffen.

Entwickler glauben häufig, dass sie das Rad neu erfinden müssten, obwohl sie für bestimmte Aufgaben eigentlich einfach nur vorhandene Anwendungen nutzen könnten. Ein gutes Beispiel hierfür ist die Verwendung einer oder mehrerer Anwendungen aus der Microsoft Office Suite. Es kann vorkommen, dass man eine Excel-Tabelle dazu verwenden möchte, ein Diagramm oder eine Spesenabrechnung zu erstellen, oder ein Word Dokument erstellen möchte, das vom Nutzer eingegebene Daten enthält. Dieser Artikel befasst sich mit der Integration von Word in eine .NET-Anwendung.

Es ist seltsam, dass Microsoft .NET als die ultimative Lösung anpreist, es aber im Programmiermodell von Microsoft Office keine Verwendung findet. Office verwendet noch immer das ältere VBA-Modell (Visual Basic for Applications). Ein kritischer Aspekt von VBA besteht darin, dass es auf COM (Component Object Model) aufbaut und .NET sowie Microsoft Office daher nicht von Haus aus miteinander kommunizieren können. Allerdings bietet eine .NET-Funktion namens COM Interop aufrufbare Wrapper, um so eine Kommunikation zwischen .NET und COM zu ermöglichen.

Ein zur Laufzeit aufrufbarer Wrapper (Runtime Callable Wrapper, RCW) erlaubt es einer COM-Komponente, von .NET genutzt zu werden. Wer die Visual Studio .NET-IDE verwendet, kann einfach diesen Schritten folgen:

  1. „Add Reference“ (Verweis hinzufügen) aus dem Menü „Project“ (Projekt) auswählen
  2. Im „Add Reference“-Fenster die COM-Registerkarte auswählen und die entsprechende Typbibliothek-Datei doppelklicken.
  3. OK auswählen um den Vorgang zu beenden und den Verweis hinzuzufügen.

Nun wandelt Visual Studio .NET die Objekte und Mitglieder in der COM-Bibliotheksdatei in entsprechende .NET-Gruppen um. Sobald die .NET-Gruppen erzeugt sind, kann man sehr einfach Klassen einrichten und Mitglieder aufrufen, als ob es sich bei den COM-Objekten und Mitgliedern um .NET-Klassen und Mitglieder handelte. Dieser Vorgang kann auch umgekehrt werden, so dass man eine .NET-Gruppe in einer auf COM basierenden Umgebung verwenden kann, dies ist jedoch nicht Thema dieses Artikels.

Ein Beispiel soll veranschaulichen, wie es funktioniert. Hier wird ein Word-Dokument mit einem einfachen .NET Windows-Formular erzeugt.

Themenseiten: Anwendungsentwicklung, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Word-Funktionen in .NET-Anwendungen nutzen

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *