it-swarm.com.de

Windows-Dienst - Erstellen eines Installationsprogramms Visual Studio 2012 Wie?

Ich entwickle einen Windows-Dienst in VS2012 und der Setup-/Bereitstellungsteil wurde entfernt. Ich kann also kein Setup-Projekt erstellen. Ich würde gerne hören, was Sie für einen guten, einfach zu bedienenden Installer empfehlen könnten. Ich muss bei der Installation des Dienstes einige Eingaben machen, nur Zeichenfolgen. Ich habe mir WiX angesehen, aber das scheint etwas komplex zu sein, und ich habe nur ein bis zwei Tage Zeit, um dieses Installationsprogramm zu erstellen.

Welches Installationsprogramm sollte ich außer Wix verwenden?

15
MMM

Ich habe wirklich schlechte Erfahrungen mit InstallShield LE (der mit Visual Studio 2012 geliefert wurde) gemacht, insbesondere für Windows Services. Die Funktionen, die Sie zum Installieren eines Dienstes benötigen (benutzerdefinierte Aktionen usw.), werden nicht mit der Light-Version geliefert.

Was ich für den aktuellen Windows-Dienst, an dem ich arbeite, vorhabe, ist das Erstellen von Topshelf . Dies bedeutet (unter anderem), dass die Installation Ihres Dienstes so einfach ist wie das Ausführen von MyServiceApp.exe install. Ich bin sicher, sogar mit InstallShield können Sie Ihre App ausführen, sobald sie installiert ist. Anschließend kann Ihre App/Topshelf die Servicekomponente installieren.

Wenn InstallShield für Sie nicht funktioniert, habe ich mit NSIS schon gute Ergebnisse erzielt. Einfache, leistungsfähige, kostenlose, anständige Dokumentation. Sieht ein bisschen klobig aus.

4
TarkaDaal

Hier eine Liste von Setup-Tools, mit denen Sie loslegen können: http://en.wikipedia.org/wiki/List_of_installation_software

Wenn Sie nicht viel Zeit zum Erstellen des Installationsprogramms haben, empfehle ich die Verwendung eines kommerziellen Tools wie Advanced Installer oder InstallShield. Sie benötigen eine Lizenz, aber sie konzentrieren sich auf die Benutzerfreundlichkeit (mehr in kürzerer Zeit).

1
user527987

Sie können dies mit InstallShield LE tun ... Sie können benutzerdefinierte Aktionen "After Register Product" für die Installation und für "After System Changes" hinzufügen. Diese benutzerdefinierten Aktionen können eine EXE-Datei auf dem Computer ausführen. 

Stellen Sie sicher, dass Sie die Befehlszeilentools "im Systemkontext" ausführen.

Führen Sie nach dem Registrieren des Produkts die Version von InstallUtil auf Ihrer .NET-Version aus. Programmdateien (x86)\XXX\YYY\ZZZ.exe " Ersetzt XXX YYY und ZZZ entsprechend Ihrer Installation

Nach Systemänderungen, um den Dienstnamen zu löschen. sc "servicename" löschen

Beachten Sie, dass Sie Unterstützung für die benutzerdefinierten Aktionen in Ihrer eigenen Dienstprogrammdatei benötigen (dies war auch in früheren Versionen von VS erforderlich).

Weitere Informationen zu SC finden Sie hier: http://support.Microsoft.com/kb/251192

0