Nicht genügend Berechtigungen zum Installieren des Dienstes

7

Ich habe die folgende Erklärung meines Dienstes:

%Vor%

Dies kompiliert und verknüpft ohne Fehler oder Warnungen. Der Service exe wird ordnungsgemäß mit KeyPath="yes" angegeben. Wenn ich meine MSI starte, kann es bei 'Start Service ...' nicht weiter gehen. Ich erhalte eine Fehlermeldung wie folgt:

Die Benutzerkontensteuerung wird angezeigt, wenn ich auf "Installieren" klicke. Was läuft also falsch?

    
fredley 06.03.2012, 16:40
quelle

6 Antworten

10

Es sollte ohne die WiX-util-Erweiterung funktionieren. Hier ist mein kompletter Test Installer. Erstellen Sie ein eigenes Testprojekt und kopieren und verwerfen Sie mein Installationsprogramm in Ihre .wxs-Datei. Ersetzen Sie dann die Pfade und Namen File, ServiceInstall und ServiceControl durch Ihren eigenen Dienst. Wenn Sie immer noch die gleiche Fehlermeldung erhalten, könnte es sein, dass Sie nicht über die Berechtigung verfügen, die Installation auf Ihrem Computer durchzuführen?

%Vor%     
BryanJ 10.03.2012, 03:32
quelle
7

Das ServiceInstall-Konto muss als solches vollständig qualifiziert sein:

<ServiceInstall ... Account="NT AUTHORITY\LocalService" />

Es kann fehlschlagen, wenn nur so angegeben:

<ServiceInstall ... Account="LocalService" />

    
Chris Schiffhauer 19.08.2013 21:15
quelle
3

Wahrscheinlich müssen Sie die Berechtigung für Ihren Dienst festlegen, etwa so:

%Vor%

und vergessen Sie nicht, die UtilExtension einzuschließen:     xmlns: util="http://schemas.microsoft.com/wix/UtilExtension"

Es gibt einen anderen Weg (aber nicht empfohlen :) Sie könnten versuchen, es mit benutzerdefinierten Aktionen zu installieren:

%Vor%

Das Problem mit diesem Code ist, dass Sie den Installationsort ohne Leerzeichen haben müssen (ich hatte ein Problem mit Leerzeichen und konnte es nicht lösen, wahrscheinlich haben Sie mehr Glück).

    
Vladimir P 07.03.2012 14:29
quelle
2

Die Fehlermeldung ist irreführend. Sie erhalten diese Fehlermeldung immer dann, wenn der Dienst nicht gestartet werden kann, aber es hat möglicherweise nichts mit Berechtigungen zu tun.

  1. Öffnen Sie eine Visual Studio-Eingabeaufforderung und installieren Sie sie manuell:

    %Vor%
  2. Versuchen Sie dann, den Dienst auf Ihrem Computer manuell zu starten (über services.msc).

Wenn Ihr Dienst fehlschlägt, handelt es sich um ein Problem mit Ihrem Dienst und nicht um das Installationsprogramm.

    
BryanJ 12.03.2012 15:22
quelle
2

Ich hatte das gleiche Problem, es wurde von einer früheren Version des Dienstes verursacht, der immer noch auf dem System läuft. Um dies zu beheben, geben Sie eine Eingabeaufforderung mit erhöhten Rechten ein und geben Sie Folgendes ein:

%Vor%     
Mister Cook 14.11.2014 18:52
quelle
0

Dies kann auch auftreten, wenn der Name der Servicedatei (in meinem Fall eine .exe) falsch ist. Ich habe es geschafft, ein wenig zu arbeiten, indem ich die korrekte Datei (die ausführbare Datei) an die erste Stelle in der Dateiliste gesetzt habe, etwa wie folgt:

              

Der Name des Servicedateinamens kann in der Ereignisanzeige angezeigt werden - Die Ereignis-ID der Serviceinstallation lautet 7045

Grüße Thomas

    
Thomas 26.02.2013 13:21
quelle

Tags und Links