Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Logon Events per Service abgreifen (https://www.delphipraxis.net/134785-logon-events-per-service-abgreifen.html)

CodeX 28. Mai 2009 22:27


Logon Events per Service abgreifen
 
Ich möchte bestimmte Funktionen ausführen, wenn der Logon-Bildschirm erscheint bzw. wieder verschwindet. Dazu müsste es ja irgendwie möglich sein, die entsprechenden Events abzugreifen.

Ich weiß, dass das per Winlogon Notification Package gehen sollte. Nun habe ich aber so oder so bereits einen eigenen Service laufen und überlege, ob die DLL Geschichte damit nicht überflüssig wird.

Leider habe ich keine dazu finden können. Geht das oder nicht? Kann wer helfen?

Fridolin Walther 28. Mai 2009 22:46

Re: Logon Events per Service abgreifen
 
Ich bin mir nicht 100% sicher, was Du meinst, aber das könnte Dir evtl. helfen:
http://msdn.microsoft.com/en-us/library/ms683241.aspx

Das Event SERVICE_CONTROL_SESSIONCHANGE ist für Dich von besonderem Interesse. Dort kannst Du dann auf WTS_SESSION_LOGON bzw. WTS_SESSION_LOGOFF testen um Logins mitzubekommen. Liefert Dir nicht ganz so viele Funktionen wie ein Winlogon Notification Package, funktioniert dafür aber auch mit Windows Vista aufwärts.

SENS wäre auch noch eine Möglichkeit ab Windows 2000 Aufwärts:
http://msdn.microsoft.com/en-us/library/aa376860.aspx

CodeX 28. Mai 2009 23:34

Re: Logon Events per Service abgreifen
 
Danke, das klingt schon mal gut! :)

Zitat:

Zitat von 0xF30FC7
Ich bin mir nicht 100% sicher, was Du meinst

Deinen Hinweisen zufolge hast Du mich glaub ich richtig verstanden, aber dennoch kurz nochmal:
Logon-Screen erscheint -> Service führt Aktion aus
Logon-Screen verschwindet -> Service führt andere Aktion aus


Der erste Link klingt gut, ich habe aber elider für die korrekte Verwendung von RegisterServiceCtrlHandlerEx/HandlerEx keine Delphi Beispiele gefunden.

SENS war auch ein gutes Stichwort. Ich sehe so auf Anhieb keine Nachteile ggü. der anderen Methode. Eher den Vorteil, dass das auch mit 2000 funktioniert. (das andere ja erst ab XP)
Ich sehe gerade, dass in der Jedi API ein Beispiel zu SENS drin ist. Das werde ich jetzt mal ausprobieren. Wenn Du aber noch irgendwelche Beispiele/Hinweise hast, sehr gerne!


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:44 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