![]() |
Applikation vom Dienst aus starten
Hallo!
Ich hab mir jetzt einen Dienst (nach Assarbads-Bsp) und eine TrayApp gebastelt. Diese beiden können auch problemlos miteinander kommunizieren über TsocketServer/Client. Nun möchte ich aber, dass die TrayApp automatisch gestartet wird, wenn der Service startet. Und der Service diesen Prozess überwacht und wenn die TrayApp beendet wurde sofort wieder neustartet. Die TrayApp soll aber als User und nicht als SYSTEM ausgeführt werden. Die genaue Frage: Wie starte ich eine App von einem Service aus mit den Privilegien eines Users? THX RobzCop :drunken: :drunken: |
Re: Applikation vom Dienst aus starten
LogOnAsUser() und eventuelle Privilegien sind nötig. Denn der SYSTEM Account bedeutet nicht das SYSTEM die meisten Rechte besitzt. Es ist durchaus möglich und auch sinnvoll den SYSTEM Account restriktiver zu halten.
Gruß Hagen |
Re: Applikation vom Dienst aus starten
Es gibt auch noch ne API namens CreateProcessAsUser...
|
Re: Applikation vom Dienst aus starten
Hallo robzcop, Hagen und Motzi,
ich benutzte seit einigen Jahren(2) ein ähnliches selbst geschriebenes Programm. ( ein Dienst startet Programme die bei Windows 2000 unter Benutzeranmeldung nicht funktionieren ) Dies geht eigentlich ganz gut. Das Programm läuft zwar unter dem System-Konto, kann aber in die jeweiligen "Eigenen Dateien" speichern. Vor einigen Wochen entdeckte ich nun den Befehl CreateProcessAsUser, bekomme ihn allerdings nicht zum Laufen weil bereits die notwendige API-Funktion Logonuser eine Fehlermeldung erzeugt. In diesem Forum gibt es einige Beiträge zu diesem Thema, die allerdings den API-Befehl CreateProcessWithLogonW benutzen. Diese Beispiele werden ich mal probieren. (in der Win-API Hilfe existiert dieser Befehl allerdings nicht -W2000 Delphi 5-) Trotzdem würde mich interessieren wie der Befehl Logonuser und CreateProcessAsUser nun eigentlich funktionieren. Über eine Veröffentlichung an dieser Stelle würde ich mich freuen. A&O |
Re: Applikation vom Dienst aus starten
Dazu habe ich doch gerade einen Thread aufgemacht:
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:19 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz