| Addin Entwicklung mit Add-in Express |
| dev - c# | |||
Die SituationWer bereits Erfahrung mit der Programmierung von Erweiterungen für die Programme aus der Microsoft Office-Reihe gesammelt kann, kann mit Sicherheit eins bestätigen. Eine komplizierte API die sich zudem stark von Version zu Version ändert. Ein Programmiermodell, das ,milde gesagt, weit entfernt von intuitiv ist und Systemvoraussetzungen für die Programmierung die für Gelegenheitsprogrammierer nicht unbedingt einladend sind. Unmöglich? Die Firma Add-in Express Ltd. aus Weißrussland bietet ein gleichnamiges Tool an, das diese Wünsche wahr werden lassen soll. InstallationAlle Produkte von Add-In Express sind Downloadversionen. Herunterladen, auf die setup.exe doppelklicken, los geht's. Bei der Installation wird zunächst nach vorhandenen Versionen von Visual Studio gesucht. Einer der Vorteile gegenüber herkömmlicher Office Programmierung per VSTO besteht darin, dass Add-In Express auch mit den kostenfrei erhältlichen Express-Versionen von Visual Studio lauffähig ist. Bevor die Installation richtig startet muss das Produkt noch aktiviert werden. Hierzu ist eine Internet-Anbindung zwingend erforderlich. Installationsdauer etwa 5 Minuten, danach kann es losgehen. Aber wie? DokumentationUm diesen Punkt zu klären ist ein Blick in die äußerst ausführliche Dokumentation sinnvoll. Bei der Installation wird ein Dokumentationsordner erzeugt. In diesem befindet sich neben diversen vorkompilierten Hilfedateien auch eine PDF-Datei, die die Möglichkeiten von Add-in Express anhand mehrerer kleinerer Projekte exemplarisch darstellt. Auf der Webseite von Add-In Express gibt es ebenfalls ein wahres Arsenal von Hilfsdateien, How To-Listen, Flash-Filmen als Lehrvideos und Quellcode für lauffähige Office-Erweiterungen. Ein Wort beschreibt, wie es um die Dokumentation beschieden ist: Vorbildlich! Eine Outlook Leiste in 5 Minuten erstellen
Hier findet man jetzt einige neue Projekttypen. Für unser Beispiel wählen wir das ADX COM Addin. Beim Erstellen des Projekts hilft nun zunächst der folgende Wizard. Hier kann gewählt werden für welche Office Produkte das neue Addin genutzt werden soll. Ausserdem kann bei Bedarf automatisch ein passendes Setup-Projekt generiert werden. Dieses wird man später sicher an seine eigenen Wünsche anpassen, als Einstieg ist die Generierung jedoch recht praktisch. Selbstverständlich ist eine manuelle Setup-Erstellung ebenfalls möglich. Bei Wahl des ADX Loaders läuft das Addin später in einem eigenen Kontext. Dies ist sehr praktisch, wenn bei der Ausführung Fehler im Addin auftreten. Diese reißen dann nämlich nicht automatisch die Hauptanwendung mit in's Datennirvana. Zuletzt kann man sich noch entscheiden, ob eine PIA eingebunden wird, die genau an eine Office-Version gebunden ist, oder ob eine versionsübergreifende Assembly genutzt wird. Beide Möglichkeiten haben diverse Vor- und Nachteile, die in der Dokumentation ausführlich erläutert werden. Nachdem dieser übersichtliche Wizard durchlaufen wurde können wir mit der Entwicklung loslegen. Das erstellte Addin Module öffnen wir zunächst im Designer. Ein Kontextmenu zeigt uns die Vielfalt von Möglichkeiten an, die wir dem Designer hinzufügen können. Für unser Beispiel wählen wir die Explorer CommandBar. Nun folgt ein Schritt, der jedem VSTO-Entwickler die Freudentränen in's Gesicht treiben wird. Echtes RAD für Office. Hier können verschiedene Controls zur CommandBar hinzugefügt werden. Diese werden direkt im Designer angezeigt (siehe oben im Bild) und die Properties lassen sich komfortabel editieren. In diesem Editor stellen wir also bereits die wichtigsten Eigenschaften unserer CommandBar und deren Controls ein. Nicht ganz so intuitiv ist leider das Hinzufügen von Events gelungen. Hierfür müssen wir nämlich diesen Designer verlassen und im DropDown-Menu der Eigenschaften das gesuchte Control auswählen. Nun lassen sich gewohnt einfach Events hinzufügen und editieren. Genau dies machen wir nun für das Click-Event eines der neu erstellten Buttons. Die erstellte Methode füllen wir nur exemplarisch mit der Anzeige einer MessageBox. So weit, so gut. Jetzt möchten wir natürlich testen, ob unser kleines Beispiel auch funktioniert. Dazu registrieren wir zuerst das Addin mittels Kontextmenu. Dies ist im Übrigen der Grund dafür, dass wir unsere Entwicklungsumgebung als Administrator starten mussten. Nun könnten wir entweder Outlook direkt starten, oder gleich in den Debug-Modus gehen. In den Eigenschaften des Projekts kann Outlook als extern zu startende Anwendung festgelegt werden. Danach klappt's dann auch mit der Fehlersuche. Beim Klick auf den linken Button kommt dann auch direkt die MessageBox zum Vorschein (müsst Ihr mir jetzt einfach mal glauben). Umfang/MöglichkeitenDer Funktionsumfang von Add-In Express ist schier überwältigend. Neben diversen Ausprägungen von COM-Addins, werden SmartTags, Excel RTD, Anpassung diverser GUI-Bereiche der Office Programme wie z.B. den Ribbons oder speziellen Task-Panes unterstützt. Dies ist auch der Grund dafür, dass ich die Möglichkeiten des Produkts bisher lediglich punktuell antesten konnte. Es gibt noch sehr viel zu entdecken und ich denke, dass ich zu einem späteren Zeitpunkt erneut einen Beitrag zu diesem Produkt schreiben werde. SupportIrgendwann kommt man beim Entwickeln fast zwangsläufig an den Punkt, wo es trotz hervorragender Dokumentation und eingängiger Bedienung einfach nicht mehr weiter zu gehen scheint. An diesem Punkt kommen dann meist Google oder ähnliche Suchmaschinen zum Zug. Die Firma Add-In-Express bietet mehrere Möglichkeiten,um Fragen zu stellen. Zum einen den direkten Weg per Mailformular zum Zweiten ein Forum. Fragen die dort gestellt werden, werden im Allgemeinen recht schnell von den Supportmitarbeitern geklärt. Dabei gehen die Entwickler von Add-In Express soweit, sich u.U. komplette Projekte oder Konfigurationen senden zu lassen, um die Probleme näher zu analysieren. Ein prima Service der definitv kompetent ist. Ebenfalls hochinteressant ist das Blog der Entwickler von Add-in Express. Dort werden interessante Artikel rund um die Addin-Entwicklung veröffentlicht. FazitWer häufig Addins für die Office-Familie entwickelt, sollte definitv einen Blick auf das beschriebene Produkt werfen. Die Lizenzkosten haben sich wahrscheinlich schnell amortisiert. Ein fantastischer Support und eine hervorragende Dokumentation erleichtern den Einstieg in die Addin-Entwicklung und sorgen für schnelle Erfolge. Ein Wehrmutstropfen bleibt. Trotz der Erleichterung durch Addin-Express für Standardaufgaben gibt es noch immer genug Aufgaben, die eigentlich auch Standard sind, die jedoch noch immer versionsabhängig und teilweise sehr umständlich programmiert werden müssen. So ist z.B. das Auslesen der echten EMail-Adresse des Absenders einer EMail in diversen Versionen von Outlook ein totaler Krampf. Abhängig davon, ob die EMail über einen Exchange-Server geschickt wurde oder nicht, muss anders vorgegangen werden und die Abfragen unterscheiden sich sehr stark zwischen den Outlook Versionen. Ich meine, da hätte man ja natürlich auch nicht mit rechnen können, dass man so eine exotische Aufgabe einmal machen muss....
|