Ich habe mehrere Klassenbibliotheken mit einigen Befehlen und Auto-Updater für ArcGIS. Bis jetzt enthielt jede Bibliothek eine Installer-Klasse und wir hatten ein einzelnes Setup-Projekt, das für die Installation aller DLLs zuständig war. Genau wie in here.
Ich habe jetzt eine andere Bibliothek erstellt, die eine Symbolleiste enthält, die alle Befehle enthalten sollte, die wir haben. Das Projekt verweist auf die anderen Projekte, und die AddItem
(Von der BaseToolbar
Basisklasse) verwendet die AddItem(Type type)
Überladung, um alles stark typisiert zu haben und nicht nur basierend auf Strings (für CLSID oder Namen).
Natürlich enthält das Toolbar-Projekt den Insallter. Ich wollte nur wissen, ob es eine gute Idee ist, die vorgeschlagene Installer-Implementierung zu ändern (von dem obigen Link), damit sichergestellt wird, dass alle DLLs der Befehle registriert werden (Iterieren über DLL-Dateien im Ausgabeordner und Registrieren) sie? Gibt es einen besseren Weg?)
Dies wird die Installation Sorge aus jedem Befehlsprojekt an einen zentralen Ort verschieben. Ich denke, dass es auf diese Weise einfacher ist, weitere Befehle hinzuzufügen, da ich ihnen nur eine Referenz aus dem Toolbar-Projekt hinzufügen muss. Ist das sinnvoll, oder sollte ich ein Installationsprogramm einzeln in jedes Projekt einfügen und sie dem Setup-Projekt einzeln hinzufügen?arcgis com Registrierung
Und noch etwas - gibt es eine einfache Möglichkeit, wo innerhalb ArcMAP mehrere Befehle kommen? Ich habe dort einige seltsame Kategorien (erstellt von früheren Benutzern auf diesem Rechner), mit alten Befehlen, die ich gerne entfernen würde.
Ja, ich weiß, wir hätten eine einzige Commands DLL für alle unsere Befehle gemacht. Sollte haben ist das Schlüsselwort :-) danke für den vs-Tipp. Ich werde diese Liste betrachten. –