Registriert seit: 30. Okt 2004
475 Beiträge
Delphi 12 Athens
|
Form auf "benutzerlosem" Logon-Bildschirm anzeigen
26. Mai 2012, 01:43
Kurzfassung: Ich würde gerne eine Anwendung/Form (hauptsächlich bestehend aus einem Schriftzug) auf dem Windows 7 Logon-Bildschirm anzeigen.
Was bereits geht:
- Start der Anwendung von einem Service aus
- Durch Setzen von StartupInfo.lpDesktop := 'winsta0\winlogon' und Verwendung der Benutzer-Session (bei einem Benutzer = 1) wird die Anwendung tatsächlich auch auf dem Logon-Bildschirm des eingeloggten Benutzers angezeigt.
Das Problem ist jedoch, dass es eben nur auf dem einen Login-Bildschirm sichtbar ist. Ich musste u.a. lernen, dass jeder Benutzer (jede Session) einen eigenem Logon-Bildschirm besitzt. Das bedeutet z.B. dass ich die Anwendung für jeden Benutzer auf dessen eigenen Logon-Bildschirm anzeigen muss. Das geht auch und ist nicht das Problem. Um welchen Logon-Bildschirm handelt es sich jedoch, wenn noch kein Benutzer eingeloggt ist (direkt nach dem Hochfahren) oder wenn man im eingeloggten Status erst Win+L und dann auf "Benutzer wechseln" geht?
Naheliegend wäre dies Session 0. Allerdings handelt es sich dabei wohl um eine nicht interaktive Session und dort kann man auch nichts anzeigen (zumindest habe ich das nicht hinbekommen). Lasse ich die Anwendung auf Session 0 laufen, sehe ich sie zwar im Taskmanager, nicht jedoch auf dem Logon-Bildschirm.
Irgendwie muss dieser "benutzerlose" Logon-Bildschirm aber doch auch ansprechbar sein!? Er ist ja auch sichtbar, man kann dort interagieren und beispielsweise den Dialog "Erleichterte Bedienung" anzeigen lassen (letztlich auch nur eine Anwendung/Form).
Benötige ich dafür irgendeinen bestimmten Parameter? Ist es eine andere Session? Oder gibt es sonst noch eine andere Möglichkeit?
Nur Delphi schafft es, einem ein Lächeln zu schenken, wenn man sich beim Schreiben von := vertippt und stattdessen ein :) erscheint.
|