Freigeben über


SetThreadDesktop-Funktion (winuser.h)

Weist den angegebenen Desktop dem aufrufenden Thread zu. Alle nachfolgenden Vorgänge auf dem Desktop verwenden die Zugriffsrechte, die dem Desktop gewährt werden.

Syntax

BOOL SetThreadDesktop(
  [in] HDESK hDesktop
);

Parameter

[in] hDesktop

Ein Handle für den Desktop, der dem aufrufenden Thread zugewiesen werden soll. Dieses Handle wird von der Funktion CreateDesktop, GetThreadDesktop, OpenDesktop oder OpenInputDesktop zurückgegeben.

Dieser Desktop muss der aktuellen Fensterstation für den Prozess zugeordnet sein.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.

Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Hinweise

Die SetThreadDesktop-Funktion schlägt fehl, wenn der aufrufende Thread über Fenster oder Hooks auf dem aktuellen Desktop verfügt (es sei denn, der hDesktop-Parameter ist ein Handle für den aktuellen Desktop).

Warnung Es besteht ein erhebliches Sicherheitsrisiko für jeden Dienst, der ein Fenster auf dem interaktiven Desktop öffnet. Durch das Öffnen eines Desktopfensters macht sich ein Dienst anfällig für Angriffe des angemeldeten Benutzers, dessen Anwendung schädliche Nachrichten an das Desktopfenster des Diensts senden und dessen Funktionsfähigkeit beeinträchtigen könnte.
 

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winuser.h (windows.h einschließen)
Bibliothek User32.lib
DLL User32.dll
APIs ext-ms-win-ntuser-windowstation-l1-1-0 (eingeführt in Windows 8)

Weitere Informationen

CreateDesktop

Desktops

GetThreadDesktop

OpenDesktop

SetProcessWindowStation

Window Station- und Desktopfunktionen