hallo erstmal...
Ich muss in meinem Betrieb COM-Komponenten unter C# entwickeln. Diese werden dann in ein Firmenprogramm eingebunden. Das firmenprogramm wurde unter c++ programmiert. An meinem Entwickler-PC werden die Komponenten ja durch Visual Studio automatisch registriert. mein problem ist jetzt diese Registration zu automatisieren, da die Anwender nach der Installation des Firmenprogramms nciht erst mal die regasm ausführen sollen.
Gibt es eine Möglichkeit die Registrierung zu automatisieren???
Danke im voraus
mfg
Bitz
ja über ein setup bzw eine Batch Datei
Wir Arbeiten eigendlich nicht wir nehmen nur das geld
Im .NET Framework sind diverse Befehlszeilentools enthalten, mit denen Du COM-Komponenten registrieren kannst.
REGASM - Registriert gewöhnliche COM Komponenten
REGSVCS - Registriert COM+ Komponenten (Enterprise Services)
INSTALLUTIL - Installiert Assemblies als Windows-Dienste
Das steht alles in der VS.NET Online-Hilfe und in der MSDN Library.
Es geht auch viel einfacher!
Du kannst ein Setup-Paket für Deine Komponente(n) erstellen. Als Ergebnis bekmmst Du eine MSI-Datei mit SETUP.EXE. Damit lassen sich Deine Komponenten genauso auf den Firmenrechnern installieren, wie man es von kommerziellen Programmen gewohnt ist.
Wenn es viele Arbeits-PCs sind, kannst Du die MSI-Datei auch über die Active Directory Softwareverteilung automatisch vom Server aus verteilen lassen.
Da es COM wohl noch eine Weile geben wird, sollte man am besten allen Freunden und Bekannten erzählen, dass XCOPY-Installation NICHT cool ist! (Wenn man COM-Komponenten verwendet)
Vielen Dank für die schnellen Antworten...
Kann ich mit Hilfe von Visual Studio die Setup-Datei aufsetzen?
wenn ja wie, wenn nein welches Tool brauch ich dazu?
Gruß Bitz
Danke nochmal..
Hab grad mal getestet..
Das Setupprogramm kann mit Visual Studio erstellt werden. Die COM-Komponenten müssen halt per Eigenschaften für COM registriert werden und shcon funktioniert es..
Trotzdem hab ich ncoh ne frage...
Von der Firmensoftware werden mir dlls bereit gestellt in denen sich die Interfaces befinden die ich benutze. Wenn ich nun in meinem Setupprogramm die selbst erstellten interop-dlls mit reinpack will er auch immer die dlls der Firmensoftware mitreinstecken..
Das ist aber nciht der richtige sinn.. da es ja verschiede Versionen der Firmensoftware gibt aber die Interfaces ja immer in der selben dll und fixiert sind. Trotzdem könnten die dlls ja unterschiedlich sein(neue Interfaces etc.).
Wie kann ich umgehen dass er die firmensoftware-dlls mitreinpackt???
Kann man die Abhängigkeiten irgendwie ändern?
Gruß Bitz
OK hab meine Frage mir wieder selbst beantwortet..
Für Leute die es interessiert....
Visual Studio hängt die Dateien zwar selbstständig ein, aber man kann unter Eigenschaften(Exclude) sagen, dass sie nicht im Setup enthalten sein sollen..
Trotzdem Danke für die Tipps...