Zitat von
Dezipaitor:
CreateWTSQueryUserTokenEx funktioniert nur unter Windows 2000. Unter XP kann es funkzen, muss aber nicht. Unter Vista funktioniert es nicht!
Okay, gut zu wissen. Wobei CreateWTSQueryUserTokenEx bei mir (wie in meinem auskommentierten Beispiel) nur mit WtsGetActiveConsoleSessionID Sinn gemacht hat. Da letzteres aber erst ab XP existiert, habe ich das eben doch nicht verwendet.
Aber letztlich tut
UserToken := TJwSecurityToken.CreateCompatibilityQueryUserToken(MAXIMUM_ALLOWED, 'explorer.exe');
ja vollkommen das, was es soll. Nachteile sehe ich keine.
Dein Vista-Beispiel verstehe ich allerdings nicht. Ich schreibe doch da nicht wirklich eine 2 als TokenSessionId hinein? Jedenfalls funktioniert das Codeschnippsel bei mir auch nicht. Ich vermute, es liegt an der 2, weiß aber nicht, was ich da sonst übergeben soll. Klärst Du mich da bitte auf?