Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Benutzer wechseln (https://www.delphipraxis.net/118910-benutzer-wechseln.html)

Remko 18. Aug 2008 15:22

Re: Benutzer wechseln
 
Actually...
It was documented starting from vista as WTSConnectSession http://msdn.microsoft.com/en-us/library/bb394782(VS.85).aspx which is merely a wrapper for WinStationConnect. I don't think it will work on the services session though (you can try offcourse).
I think for that purpose (switching to session 0) you need to use the WinStationSwitchToServicesSession which I expect to require system permissions. As I recall it's a function (or procedure) without arguments.

BullsEye 18. Aug 2008 15:50

Re: Benutzer wechseln
 
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
Windows.ExitWindowsEx(Windows.EWX_LOGOFF, 1);
end;
Nur leider reagiert das unter Vista anders als unter XP :gruebel:

Dezipaitor 18. Aug 2008 20:45

Re: Benutzer wechseln
 
Ja so kann man sich irren. Es wäre also möglich sich zu einem existierenden User zu verbinden. Ich sehe jedoch keine Möglichkeit eine eigene Session und damit eingeloggten Benutzer zu erstellen.

Wenn du Laufi oder jemand anderes in die Richtung machen will, dann wäre ich glücklich, wenn wir da etwas unter der JEDI API&WSCL machen könnten

Luckie 18. Aug 2008 20:48

Re: Benutzer wechseln
 
Zitat:

Zitat von BullsEye
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
Windows.ExitWindowsEx(Windows.EWX_LOGOFF, 1);
end;
Nur leider reagiert das unter Vista anders als unter XP :gruebel:

Und wie?

Dezipaitor 18. Aug 2008 20:51

Re: Benutzer wechseln
 
So wie der Quelltext aussieht, fehlt das Shutdownprivileg.



Wenn du Laufi oder jemand anderes in die Richtung machen will, dann wäre ich glücklich, wenn wir da etwas unter der JEDI API&WSCL machen könnten

Luckie 18. Aug 2008 21:04

Re: Benutzer wechseln
 
Zitat:

Zitat von Dezipaitor
So wie der Quelltext aussieht, fehlt das Shutdownprivileg.

Auch unter XP muss man das Privileg aktivieren.

BullsEye 19. Aug 2008 01:35

Re: Benutzer wechseln
 
Zitat:

Zitat von Luckie
Zitat:

Zitat von BullsEye
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
Windows.ExitWindowsEx(Windows.EWX_LOGOFF, 1);
end;
Nur leider reagiert das unter Vista anders als unter XP :gruebel:

Und wie?

Irgendwie wurde bei mir unter XP damals einfach der Benutzter gewechselt (Win+L) Alle Offenen Task und Fenster blieben offen.
Also folgnich eigentlich nicht das, was er tun sollte!

Unter Vista wird mein Benutzer komplett abgemeldet! Alle Offenen Task und Fenster werden geschlossen.

Und da bin ich mir zu 90% sicher, weil ich mich damals sowas von über diese dämliche "ExitWindowsEx" geärgert habe. mit Shutdown fuhr der PC auch nicht runter etc....

EDIT: So muss richtig lauten :D

hitzi 19. Aug 2008 06:14

Re: Benutzer wechseln
 
Zitat:

Zitat von BullsEye
Unter Vista wird mein Benutzer komplett abgemeldet! Alle Offenen Task und Fenster blieben offen.
[...]
Unter Vista wird mein Benutzer komplett abgemeldet! Alle Offenen Task und Fenster werden geschlossen.

Beim zweiten Satz muss bestimmt "Vista" mit "XP" getauscht werden, oder?


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:12 Uhr.
Seite 2 von 2     12   

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