Laden...

[erledigt] Installation: Fehler bei der Installation eines Diensts: Der Kontoname ist unzulässig ...

Erstellt von 0bsidian vor 11 Jahren Letzter Beitrag vor 11 Jahren 7.062 Views
0
0bsidian Themenstarter:in
3 Beiträge seit 2012
vor 11 Jahren
[erledigt] Installation: Fehler bei der Installation eines Diensts: Der Kontoname ist unzulässig ...

Guten Tag zusammen,

wie man an den Posting-Zahlen sieht, bin ich noch recht "frisch" im Forum unterwegs 😃 daher bitte ich um Rücksicht, wenn ich einen Fehler beim Posten begehe.

Ich habe mir bereits den Thread [Tutorial] Programmieren von Windows Services mit C# durchgelesen, dieser deckt aber leider mein Problem nicht ab 😦

Folgendes: Ich habe bereits die Logik des Diensts implementiert (Netzwerk-Clienten überwachen, falls keine vorhanden sind -> Ruhezustand). Nun möchte ich diese Funktionalität als Dienst bereitstellen.

Dies habe ich mit VS2010 bewerkstelligt, indem ich einen Windows-Dienst erstelle:

Auszug aus der Service.cs

        protected override void OnStart(string[] args)
        {
            Timerverwaltung timer = new Timerverwaltung();

            timer.Suchintervall.Elapsed += new System.Timers.ElapsedEventHandler(check);
            timer.Suchintervall.Enabled = true;

        }

Hier wird ein Timer initialisiert, der alle 15 Minuten die check-Methode aufruft, um nach vorhandenen Clienten im Netzwerk zu suchen. Dem Projekt habe ich dann anhand dieser Anleitung (Erstellen einer Windows-Dienstanwendung im Komponenten-Designer) eine Installation hinzugefügt, ab Punkt "So erstellen Sie die Installationsprogramme für den Dienst".

Ich habe nun also in meinem Projekt-Verzeichnis eine setup.exe und eine AutomaticShutdownSetup.msi, die ich auf dem Überwachungs-Rechner installieren möchte. Also die Dateien kopiert und auf dem besagten Rechner installiert, funktioniert auch soweit und wird unter installierten Programmen aufgeführt.

Jetzt kommt der eigentliche Fehler: Sobald ich mit installutil.exe die Ressource installieren/registrieren möchte, kommt eine Aufforderung, den Accountnamen und 2x das Passwort einzugeben. Gesagt, getan: Hiernach bekomme ich folgenden Fehler:

Fehlermeldung:
Während der Installationsphase ist eine Ausnahme aufgetreten.
System.ComponentModel.Win32Exception: Der Kontoname ist unzulässig oder nicht vorhanden, oder das Kennwort ist für den angegebenen Kontennamen ungültig. Ich habe mich natürlich nicht lumpen lassen und im ProjectInstaller.Designer.cs folgendes angegeben:

ProjectInstaller.Designer.cs:InitializeComponent

            this.serviceProcessInstaller1.Password = "Account-Passwort";
            this.serviceProcessInstaller1.Username = "Accountname";

Jetzt kommt zwar keine Aufforderung zur Eingabe mehr, der Fehler bleibt jedoch bestehen 😦 Hier kam dann der Punkt, diesen Thread zu erstellen.

Hilfe und Anregungen sind sehr gerne gesehen!!

4.221 Beiträge seit 2005
vor 11 Jahren

Offtopic: Nebenbei: Ueberleg Dir mal, wie lange der Timer lebt wenn Du diesen in der OnStart-Methode statt auf Klassenebene deklarierst....

PS: Dies ist NICHT der Grund wieso sich dein Dienst nicht installieren lässt.

Früher war ich unentschlossen, heute bin ich mir da nicht mehr so sicher...

16.842 Beiträge seit 2008
vor 11 Jahren

Der Fehler ist ja schon ziemlich eindeutig - da gibts nichts zu rütteln.
Vielleicht Domäne beim Accoutname vergessen...?

Normalerweise gibt man aber einer Installationsroutine keinen festen Admin, sondern startet das ganze Setup als Admin.

0
0bsidian Themenstarter:in
3 Beiträge seit 2012
vor 11 Jahren

Dafür bräuchte ich ja einen Domain Controller und ein Active Directory, dachte sowas sei bei einer ganz normalen privaten Win7 Prof. nicht vorhanden. Jedenfalls wenn ich unter "Computer->Eigenschaften" schaue, wird mir kein Domänenname angezeigt (jedoch eine Arbeitsgruppe, damit mal versuchen?).

16.842 Beiträge seit 2008
vor 11 Jahren

Nein, dann brauchst Du auch keinen Domänenanhand, da dann sowieso gegen das lokale System getestet wird.
Aber wenn der jetzt sagt, dass das PW falsch ist, dann stimmen höchstwahrscheinlich genau diese Dinge nicht. Das wird er ja nicht sagen, wenn er eine Datei nicht findet (wobei ich Service Installationen nich perfekt kenn).

0
0bsidian Themenstarter:in
3 Beiträge seit 2012
vor 11 Jahren

Es war so ähnlich, man muss den Computernamen dazuschreiben 😃 also COMPUTERNAME\ACCOUNTNAME.

Problem behoben und Thread kann geschlossen werden 😃.

Hinweis von Abt vor 11 Jahren

Bitte beachte [Hinweis] Wie poste ich richtig? 2.3 - will nicht dauernd Deine Full-Quotes entfernen müssen...