|
<< Click to Display Table of Contents >> RayPack > 8.0 > User Guide > PackDesigner > MSI / MST / RPP-basierte Projekte > Visueller Designer-Modus > Systeminteraktion > Dienste Dienst bearbeiten |
Dienstmanipulationsobjekte umfassen eine umfangreiche Reihe von Einstellungsoptionen. Um eine übersichtliche und leicht zu bedienende Oberfläche für diese Objekte bereitzustellen, ist der Bereich zum Bearbeiten von Diensten in vier Aktivitätsblöcke unterteilt:
Während die grundlegenden Eigenschaften immer zur Bearbeitung verfügbar sind, sind die übrigen Einstellungen in Registerkarten gruppiert, die Benutzer manuell aufrufen müssen.
Diese Eigenschaft ist der Name des Dienstes auf dem Zielrechner.
•Wenn ein Dienst erstellt wird, wird der Name für die interne Diensterkennung und -verwaltung festgelegt.
•Wenn ein Dienst gesteuert wird, muss der in diesem Wert verwendete Name mit dem Namen des gesteuerten Dienstes auf dem Zielgerät übereinstimmen. Der Abgleich erfolgt ohne Berücksichtigung der Groß-/Kleinschreibung.
Dienstnamen dürfen aus maximal 256 alphanumerischen Zeichen bestehen. Die Verwendung von Schrägstrich („/") und umgekehrtem Schrägstrich („\") in Dienstnamen ist nicht zulässig.
Jedes Dienstmanipulationselement benötigt eine Komponentenbeziehung.
•Bei Diensterstellungen muss der Schlüsselpfad der zugehörigen Komponente die ausführbare Datei für den neuen Dienst sein. Außerdem wird der Dienst nur erstellt, wenn die Komponente tatsächlich während der Installer-Sequenzen installiert wird.
•Bei Dienststeuerungen entscheidet die Komponente, ob die Dienststeuerungsaufgabe während der Installer-Sequenzen ausgeführt wird.
Bitte beachten Sie, dass die Standardkomponente, die RayPack auswählt, wenn das Dienstmanipulationsobjekt dem Paketierungsprojekt hinzugefügt wird, höchstwahrscheinlich nicht die für das Zielpaket gewünschte ist. Stellen Sie sicher, diese Einstellung auf die richtige Komponente anzupassen!
|
Hinweis: Die Eigenschaften, die Benutzer in dieser Registerkarte bearbeiten können, sind für Dienststeuerungselemente nicht relevant.
Um jedoch ein Steuerungselement in ein Dienstmanipulationsobjekt umzuwandeln, das tatsächlich einen Dienst erstellt, können Benutzer das Create Service-Kontrollkästchen in dieser Registerkarte deaktivieren.
Benutzer können ebenso ein Dienststeuerungselement in ein Diensterstellungsobjekt umwandeln, indem sie das Create Service-Kontrollkästchen in dieser Registerkarte aktivieren.
Wenn der Manipulationstyp gewechselt wird, müssen Benutzer das Dienstmanipulationsobjekt hinsichtlich des Vorhandenseins und der Gültigkeit aller erforderlichen Einstellungen und Referenzen prüfen. Insbesondere bei Steuerungselementen, die in Erstellungselemente umgewandelt wurden, muss der Schlüsselpfad-Dateistatus der zugehörigen Komponente in Bezug auf die korrekte ausführbare Dienstdatei überprüft werden. |
Create Service
Diese Option ist aktiv, wenn das Dienstmanipulationselement darauf ausgelegt ist, einen neuen Dienst auf dem Zielrechner zu erstellen.
Es ist nicht möglich, dieses Kontrollkästchen zu deaktivieren, bis ein Dienstmanipulationselement mit einer Reihe von Steuerbefehlen erweitert wurde (siehe unten)
Display name
Dies ist der lokalisierbare Dienstname, wie er den Benutzern auf dem Zielsystem angezeigt wird.
Description
Die Beschreibung wird in der Dienstverwaltungsoberfläche des Betriebssystems auf dem Zielrechner angezeigt.
Executable
Dieses schreibgeschützte Feld zeigt die ausführbare Datei an, die aus dem Schlüsselpfadwert der zugehörigen Komponente abgeleitet wird. Wenn dieses Feld leer ist, enthält die Komponente noch keine passende Schlüsselpfaddatei.
Arguments
Fügen Sie Parameter zur Befehlszeile hinzu, mit der der Dienst ausgeführt wird. Wenn mehr als ein Parameter hinzugefügt wird, müssen diese durch Null („[~]") getrennt werden.
Start-up type
Die hier ausgewählte Option wird in einen Satz von Bit-Flags für die Dienststart-Steuerung übersetzt.
•Automatic – der Dienst startet automatisch mit dem Betriebssystem.
•Manual – der Dienst startet, wenn der Dienststeuerungs-Manager die StartService-Funktion aufruft.
•Disabled – der Dienst kann nicht mehr gestartet werden.
Error control
Die hier ausgewählte Option wird in einen Satz von Bit-Flags übersetzt, die die Reaktion auf Dienststartfehler auf dem Zielrechner steuern.
•Log and continue – protokolliert den Fehler und setzt den Startvorgang fort.
•Log and show message – protokolliert den Fehler, zeigt ein Meldungsfeld an und setzt den Startvorgang fort.
•Log and restart service – protokolliert den Fehler, wenn möglich, und das System wird mit der zuletzt als funktionierend bekannten Konfiguration neu gestartet. Wenn die zuletzt bekannte gute Konfiguration gestartet wird, schlägt der Startvorgang fehl.
Wenn das Kontrollkästchen „Abort install on error" aktiv ist, wird die Installation des Zielpakets selbst abgebrochen, wenn der Dienst nicht erfolgreich erstellt werden konnte.
Service type
Dienste können als separater Prozess oder als Dienstprogramm mit gemeinsam genutzten Code-Komponenten im selben Prozess ausgeführt werden. Weitere Informationen zur Auswahl der richtigen Option finden Sie in der MSDN-Dokumentation zu Dienstprogrammen.
Interaction
Dieses Kontrollkästchen wird verwendet, um Dienste zu kennzeichnen, die mit dem Desktop interagieren. Ob Interaktion zulässig ist, wird durch die Sicherheitsmechanismen des Betriebssystems des Zielgeräts gesteuert.
Bitte beachten Sie, dass die Login-Eigenschaft im Bereich Anmeldeinformationen auf „LocalSystem" oder Null („[~]") gesetzt sein muss, wenn diese Option verwendet wird.
Load order group
Eine Dienstgruppe ist eine Sammlung ähnlicher Dienste, die beim Start zusammen geladen werden. Wenn ein Wert in das Eingabefeld Load order group eingegeben wird, wird der neue Dienst zur angegebenen Gruppe hinzugefügt.
Dependencies
Geben Sie die Namen von Dienstgruppen oder einzelnen Diensten ein, die auf dem Zielgerät gestartet werden müssen, bevor das aktuelle Dienstelement gestartet werden darf. Wenn mehrere Abhängigkeiten eingetragen werden müssen, ist die Trennung durch Null („[~]") erforderlich. Weitere Informationen zur Handhabung komplexer Abhängigkeitsnotationen finden Sie in der MSDN-Dokumentation.
Login
Das Benutzerprofil, das zum Ausführen des Dienstes verwendet wird. Abhängig vom Diensttyp und den Interaktivitätseinstellungen muss der Login-Wert entweder einschließlich des Domainnamens angegeben werden (DomainName\Username oder .\UserName für integrierte Domain-Benutzer) oder durch „LocalSystem" oder Null („[~]") dargestellt werden.
Password
Das Passwort, das zum oben definierten Login-Benutzernamen passt.
|
Hinweis: Die Berechtigungsverwaltung ist für Dienstmanipulationselemente innerhalb von Paketierungsprojekten, die ein Windows Installer-Schema unter 500 verwenden, nicht verfügbar. Bitte legen Sie das Installer-Schema über die Ansicht Zusammenfassungsinformationen fest, die im Abschnitt Setup-Organisation des Visual Designer-Modus verfügbar ist. |
Im Berechtigungsbereich können Benutzer Berechtigungsdefinitionen hinzufügen, die in die MsiLockPermissionsEx-Installer-Datenbanktabelle eingetragen werden. Klicken Sie auf die Schaltfläche Hinzufügen, um eine neue Kombination aus Security Descriptor Definition und Bedingungszeichenfolge zu erstellen. RayPack ermöglicht das Hinzufügen mehrerer Berechtigungsverwaltungselemente zu einem Dienst.
Das Entfernen einer Berechtigungseinschränkung erfolgt durch Klicken auf die Schaltfläche Löschen, die in der oberen rechten Ecke des Berechtigungsdefinitionsbereichs angezeigt wird.
SDDL
Die in der Security Descriptor Definition Language definierte Zeichenfolge legt den tatsächlichen Berechtigungssatz für den angegebenen Dienst fest. Wenn ein Berechtigungssatz hinzugefügt wird, bereitet RayPack eine Standardzeichenfolge vor, die an die tatsächlichen Anforderungen des Paketierungsprojekts angepasst werden muss. Obwohl es möglich ist, die SDDL-Zeichenfolge direkt im angezeigten Eingabefeld zu ändern, wird empfohlen, den erweiterten Editor-Dialog zu verwenden. Verwenden Sie die Schaltfläche „edit sddl text" unterhalb des SDDL-Eingabefelds, um diesen Editor-Dialog zu öffnen.
Condition
Wenn die Berechtigung an bestimmte Bedingungen geknüpft ist, können diese mit Unterstützung des RayPack-Bedingungs-Generators definiert werden. Verwenden Sie die Schaltfläche „edit in condition builder" unterhalb des Bedingungseingabefelds, um diesen Editor zu öffnen.
Beide Typen von Dienstmanipulationselementen ermöglichen die Definition von Steuerbefehlen, die während der Installations- und Deinstallationslaufzeit auf den Dienst angewendet werden. Wenn ein neues Dienststeuerungselement zu einem Paketierungsprojekt hinzugefügt wird, fügt RayPack automatisch ein Element zur Steuerungsregisterkarte hinzu und weist dem Dienst zu, während der Installation zu starten und auf den SCM-Bericht zu warten, bevor die Installation fortgesetzt wird. Der Bezeichner des Steuerbefehls wird automatisch als eindeutige Kombination aus mehreren Werten definiert (z. B. Name des übergeordneten Dienstmanipulationsobjekts, ein inkrementierender Indexwert und das Schlüsselwort „Control").
Ein Dienststeuerungselement muss mindestens einen Steuerbefehl haben, während Dienst-Installer-Elemente auch ohne Steuerbefehl ausgeführt werden können.
Um einen Steuerbefehl hinzuzufügen, klicken Benutzer auf die Schaltfläche Hinzufügen, die oberhalb der Liste bereits vorhandener Steuerbefehle angezeigt wird. Ein neuer Befehl wird mit denselben oben beschriebenen Standardeinstellungen hinzugefügt.
Um einen Steuerbefehl zu löschen, klicken Benutzer auf die Schaltfläche Löschen auf der rechten Seite des zu löschenden Steuerbefehls.
Bitte beachten Sie, dass das Löschen eines Steuerbefehls für Dienststeuerungselemente nicht möglich ist, wenn für das Dienststeuerungsobjekt kein weiterer Steuerbefehl mehr vorhanden ist.
Jeder Steuerbefehl kann hinsichtlich der folgenden Optionen angepasst werden:
Install action
Der Befehl, der während der Installationssequenz des Zielpakets angewendet werden soll, kann eine beliebige Kombination von Folgendem sein:
•Start – startet den Dienst während der StartServices-Aktion.
•Stop – stoppt den Dienst während der StopServices-Aktion.
Das Stoppen eines Dienstes stoppt auch alle abhängigen Dienste.
•Delete – löscht den Dienst während der DeleteServices-Aktion.
Das Löschen eines Dienstes veranlasst den Installer, ihn zu stoppen, bevor er tatsächlich gelöscht wird.
Uninstall action
Der Befehl, der während der Deinstallationssequenz des Zielpakets angewendet werden soll, kann eine beliebige Kombination von Folgendem sein:
•Start – startet den Dienst während der StartServices-Aktion.
•Stop – stoppt den Dienst während der StopServices-Aktion.
Das Stoppen eines Dienstes stoppt auch alle abhängigen Dienste.
•Delete – löscht den Dienst während der DeleteServices-Aktion.
Das Löschen eines Dienstes veranlasst den Installer, ihn zu stoppen, bevor er tatsächlich gelöscht wird.
Wait Type
Benutzer können entscheiden, ob die Installation warten soll, bis der SCM (Service Control Manager) meldet, dass der Dienst in einem ausstehenden Zustand ist, bevor die Installation fortgesetzt wird, oder bis zu max. 30 Sekunden warten, bis der Dienst abgeschlossen ist, bevor die Installation fortgesetzt wird.
Argument
Fügen Sie Parameter zur Befehlszeile hinzu, mit der der Dienst ausgeführt wird. Wenn mehr als ein Parameter hinzugefügt wird, müssen diese durch Null („[~]") getrennt werden.
In dieser Registerkarte können Benutzer Ereignisse und Wiederherstellungsaktionen für das Dienstmanipulationsereignis verwalten. Beide Unterregisterkarten werden unterhalb der Hauptregisterkarten-Navigationsleiste angezeigt.
Dienstmanipulationsereignisobjekte werden intern in der Installer-Datenbanktabelle MsiServiceConfig gespeichert. Eine Liste bereits erstellter Ereignisse wird angezeigt, wenn diese Unterregisterkarte geladen wird. Um die Details eines Ereignisses anzuzeigen, muss auf das nach unten zeigende Pfeilsymbol links neben der Titelleiste jedes Ereignisses geklickt werden. (Ein weiterer Klick auf das nun sichtbare nach oben zeigende Pfeilsymbol blendet den Detailbereich wieder ein.)
Um ein Ereignis hinzuzufügen, klicken Benutzer auf die Schaltfläche Hinzufügen oberhalb der Liste bereits vorhandener Ereigniselemente und passen die Standardeinstellungen des neu erstellten Objekts an.
Um ein Ereignis zu löschen, klicken Benutzer auf die Schaltfläche Löschen, die auf der rechten Seite des Datenblocks jedes Ereigniselements angezeigt wird.
Die folgenden Ereigniseigenschaften können bearbeitet werden:
Event trigger
Ereignisse können durch Install, Uninstall und/oder Reinstall ausgelöst werden – die tatsächliche Kombination aktiver Auslöser ist eine beliebige Benutzerdefinition.
Wait type und Argument
Die verfügbaren Optionen für die Argument-Eigenschaft hängen tatsächlich vom ausgewählten Wait type ab:
•Wait type: Zeitverzögerung eines automatisch startenden Dienstes konfigurieren
Argument-Optionen:
oAutomatischen Dienststartaufschub deaktivieren
oDienst nach anderen automatisch startenden Diensten plus Zeitverzögerung starten
•Wait type: Liste der vom Dienst benötigten Berechtigungen ändern
Argument-Optionen:
oDie dafür erforderliche Argument-Zeichenfolge kann im Dialog SERVICE PERMISSIONS geändert werden. Klicken Sie auf den Link „edit argument" rechts neben dem Argument-Eingabefeld, um den Editor-Dialog zu öffnen. Aktivieren Sie das Kontrollkästchen in der äußersten linken Spalte der Berechtigungsliste, um die für den Dienst erforderliche Berechtigung zu definieren. Deaktivieren Sie Kontrollkästchen, um vorhandene Anforderungen zu entfernen.
•Wait type: Einen Dienst-SID-Typ zum Prozesstoken hinzufügen, das diesen Dienst enthält
Argument-Optionen:
oNone
oRestricted
oUnrestricted
•Wait type: Zeitdauer konfigurieren, die der SCM wartet, bevor er mit anderen Abschaltvorgängen fortfährt
Argument-Optionen:
oDer erforderliche Argument-Wert ist eine Ganzzahl, die die Sekunden angibt, die der SCM warten soll.
•Wait type: Konfigurieren, wann die Fehleraktionen für diesen Dienst ausgeführt werden sollen
Argument-Optionen:
oAktionen nur ausführen, wenn der Dienst ohne Meldung von SERVICE_STOPPED beendet wird
oAktionen ausführen, wenn der Dienst mit Meldung von SERVICE_STOPPED beendet wird
Wiederherstellungsaktionen für Dienstmanipulationen werden intern in der Installer-Datenbanktabelle MsiServiceConfigFailureOptions gespeichert. Sie definieren Aktionen, die beim nächsten Systemstart nach einem fehlgeschlagenen Dienstlauf ausgeführt werden müssen.
Eine Liste bereits erstellter Wiederherstellungsaktionen wird angezeigt, wenn diese Unterregisterkarte geladen wird. Um die Details einer Aktion anzuzeigen, muss auf das nach unten zeigende Pfeilsymbol links neben der Titelleiste jedes Elements geklickt werden. (Ein weiterer Klick auf das nun sichtbare nach oben zeigende Pfeilsymbol blendet den Detailbereich wieder ein.)
Um eine Wiederherstellungsaktion hinzuzufügen, klicken Benutzer auf die Schaltfläche Hinzufügen oberhalb der Liste bereits vorhandener Ereigniselemente und passen die Standardeinstellungen des neu erstellten Objekts an.
Um eine Wiederherstellungsaktion zu löschen, klicken Benutzer auf die Schaltfläche Löschen, die auf der rechten Seite des Datenblocks jedes Aktionselements angezeigt wird.
Die folgenden Wiederherstellungsaktions-Eigenschaften können bearbeitet werden:
Trigger
Wiederherstellungsaktionen können durch Install, Uninstall und/oder Reinstall ausgelöst werden – die tatsächliche Kombination aktiver Auslöser ist eine beliebige Benutzerdefinition und wird in einen Bit-Flag-Wert übersetzt.
Reset Period
Der Reset-Zeitraum definiert die Zeit (in Sekunden) erfolgreicher Dienst-Betriebszeit, die erforderlich ist, bevor der SCM-Fehlerzähler für den betreffenden Dienst zurückgesetzt wird.
Reboot Message
Wenn ein Neustart erforderlich ist, wird der eingegebene Wert angezeigt, bevor das System neu startet.
Command
Wenn ein Befehl als Teil der Wiederherstellungsroutine ausgeführt werden muss, muss er hier definiert werden. Wenn kein Wert angegeben wird, wird der vorhandene Befehl unverändert verwendet. Die Eingabe von Null („[~]") unterdrückt jede Befehlsausführung.
SCM Actions
Jede Wiederherstellungsaktion kann eine oder mehrere Service Control Manager (SCM)-Aktionen umfassen. Intern werden diese Aktionen als übereinstimmendes Paar von Sequenz-Arrays in den MsiServiceConfigFailureAction-Tabellenspalten Actions und DelayActions gespeichert.
Eine Liste bereits erstellter Wiederherstellungsaktionen wird angezeigt, wenn der Detailbereich einer Wiederherstellungsaktion geladen wird. Um die Details einer SCM-Aktion anzuzeigen, muss auf das nach unten zeigende Pfeilsymbol links neben der Titelleiste jedes Elements geklickt werden. (Ein weiterer Klick auf das nun sichtbare nach oben zeigende Pfeilsymbol blendet den SCM-Aktionsdetailbereich wieder ein.)
Um eine SCM-Aktion hinzuzufügen, klicken Benutzer auf die Schaltfläche Hinzufügen oberhalb der Liste bereits vorhandener SCM-Aktionselemente und passen die Standardeinstellungen des neu erstellten Objekts an.
Um eine SCM-Aktion zu löschen, klicken Benutzer auf die Schaltfläche Löschen, die auf der rechten Seite des Datenblocks jedes SCM-Aktionselements angezeigt wird.
Für jede SCM-Aktion können Benutzer die folgenden Eigenschaften bearbeiten:
Action
Benutzer müssen eine der verfügbaren Aktionen auswählen:
•Restart service
•Reboot computer
•Run command
•No action
Delay
Die Millisekunden, die gewartet werden sollen, bevor die oben definierte Aktion tatsächlich ausgeführt wird.