2009-04-17 5 views
1

Ich habe jetzt zahlreiche Beispiele gefunden und bin keiner der Klügeren.Benutzerdefinierte Installation Aktionen

Der Auftrag ist einfach. Während der Installation sollte ein Dialogfeld angezeigt werden, in dem der Benutzer nach DB-Anmeldeinformationen gefragt wird. Diese sollten dann verwendet werden, um einen Registrierungseintrag zu erstellen. Der Pfad des Schlüssels ist immer der gleiche, aber der Schlüssel selbst ist eine DB Connection-Zeichenfolge, die aus der Benutzereingabe generiert wird.

Es sollte nach einem Server, DB-Namen, Benutzer und Passwort fragen. Es wäre schön, einen "Test" -Knopf zu haben, aber nicht unbedingt notwendig.

Dies ist für einen Windows-Dienst.

Es sieht so aus, als würde ich eine Klasse hinzufügen, die vom Installer erbt und die Installations- und Deinstallationsmethoden überschreibt. Das ist ungefähr soweit, bis die Information verstümmelt ist.

Die Informationen sind nicht in meinem Buch :). Irgendwelche Ideen, wie ich dem Benutzer ein Formular bei der Installation meines Dienstes präsentieren und die Antworten auf das Formular verwenden kann, um einen Registrierungsschlüssel zu generieren.

Prost

p.s.

Als Antwort auf die Antworten;). Die Umgebung ist Visual Studio und das Zielsystem ist Windows 2003. Der Server wurde mit dem .net Framework V2 entwickelt.

Dies ist ein Standardinstallationsprojekt, das in Visual Studio erstellt wurde und den Dienst installiert.

Antwort

0

Sie sollten mit der Beschreibung Ihrer Umgebung beginnen - zielen Sie auf Windows Installer ab? Welche Installationserstellungssoftware verwenden Sie? Beachten Sie auch, dass ein einfacher Text Registrierungswert wahrscheinlich nicht die beste Option zum Speichern von Benutzeranmeldeinformationen ist.

2

Visual Studio ist als Installationsautor sehr begrenzt, und ich bin mir nicht einmal sicher, ob es möglich ist, das zu erreichen, wonach Sie suchen. Wenn Sie Windows Installer verwenden möchten, sollten Sie einen Blick auf WiX werfen. Wenn nicht, könnte NSIS das Werkzeug für Sie sein.