Ziel: Zur Unterstützung der Windows-Dienst, die mehrere Instanzen auf einer einzigen Maschine aufweisen kann, eine Setup-Projekt verwenden, um ein MSI der Lage zu erstellen:Windows Service-Name Geben Sie auf mit Setup-Projekt installieren
- Empfangen von Benutzereingaben für Service Name
- Installation Service
- Serialisieren Service Name von 1 (so dass der richtige Name in Protokollierung und deinstallation verwendet werden)
Meine anfängliche Hoffnung Service gesetzt war Benennen Sie in App.config (und rufen Sie es dann bei der Deinstallation nach der Instantiierung des ServiceInstaller ab. Dies scheint naiv zu sein, da es während der Installation nicht erreichbar ist.
Wenn MyInstaller das Installationsprogramm erweitert, kann es base.Install(); Meine Versuche, in app.config (in MyInstaller.Install() und nach base.Install()) zu schreiben, sind jedoch wirkungslos.
Während also der Dienst mit einem benutzerdefinierten Dienstnamen installiert werden kann, wird dieser Name nicht serialisiert, und der Installer ist bei der Deinstallation höchst unzufrieden.
Wie soll das gemacht werden?
in plain site versteckt! Danke Neil. –
könnten Sie Beispielcode bereitstellen? –
Ich zweite Lucas! :-) – Junto