Betriebssystemdienstmodell

Im Betriebssystemdienstmodell kommuniziert eine Anwendung, die als Standardbenutzer ausgeführt wird, mit einem Dienst, der als SYSTEM ausgeführt wird, mithilfe des Remoteprozeduraufrufs (Remote Procedure Call, RPC).

Die Standardbenutzeranwendung ist im Anwendungsmanifest mit dem requestedExecutionLevel von asInvoker gekennzeichnet. Um einen Vorgang durchzuführen, der Administratorrechte erfordert, stellt die Standardbenutzeranwendung eine Anforderung an den Dienst.

Eine Verwendung für das Betriebssystemdienstmodell besteht in der Verwaltung von Anwendungen, die sich auf das System auswirken können, z. B. Antivirensoftware oder andere unerwünschte Software und Spyware. Mit der Standardbenutzeranwendung kann der angemeldete Benutzer einige Aspekte des Diensts steuern. Der Dienst ist dafür verantwortlich, zu bestimmen, welche Vorgänge er für eine Standardbenutzeranwendung ausführt. Beispielsweise kann ein Antivirendienst es einem Standardbenutzer ermöglichen, eine Überprüfung des Systems zu starten, aber er lässt möglicherweise nicht zu, dass ein Standardbenutzer die Virenüberprüfung in Echtzeit deaktiviert.

Ein hauptvorteil der Verwendung des Betriebssystemdienstmodells ist, dass keine Eingabeaufforderung für rechte Rechte erforderlich ist.

Ein Nachteil der Verwendung des Betriebssystemdienstmodells ist, dass ein auf dem System ausgeführter Dienst mehr Ressourcen als eine Aufgabe verwendet und ein Dienst nicht von einem Standardbenutzer beendet werden kann. Erwägen Sie die Verwendung des Aufgabenmodells mit erhöhten Rechten, wenn es ausreicht.

Um das Betriebssystemdienstmodell zu implementieren, erstellen Sie eine Standardbenutzerclientanwendung und einen Betriebssystemdienst. Installieren Sie den Dienst während der Produktinstallation im Betriebssystem.

Entwickeln von Anwendungen, die Administratorrechte erfordern

Administratorbrokermodell

COM-Objektmodell des Administrators

Aufgabenmodell mit erhöhten Rechten