SwitchDesktop-Funktion (winuser.h)

Macht den angegebenen Desktop sichtbar und aktiviert ihn. Dadurch kann der Desktop Eingaben vom Benutzer empfangen. Der aufrufende Prozess muss DESKTOP_SWITCHDESKTOP Zugriff auf den Desktop haben, damit die SwitchDesktop-Funktion erfolgreich ist.

Syntax

BOOL SwitchDesktop(
  [in] HDESK hDesktop
);

Parameter

[in] hDesktop

Ein Handle für den Desktop. Dieses Handle wird von den Funktionen CreateDesktop und OpenDesktop 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. SwitchDesktop legt jedoch nur den letzten Fehler für die folgenden Fälle fest:

  • Wenn der Desktop zu einer unsichtbaren Fensterstation gehört
  • Wenn hDesktop ein ungültiges Handle ist, bezieht sich auf einen zerstörten Desktop oder gehört zu einer anderen Sitzung als der des aufrufenden Prozesses.

Hinweise

Die SwitchDesktop-Funktion schlägt fehl, wenn der Desktop zu einer unsichtbaren Fensterstation gehört. SwitchDesktop schlägt auch fehl, wenn es von einem Prozess aufgerufen wird, der einem geschützten Desktop zugeordnet ist, z. B. winLogon- und ScreenSaver-Desktops. Prozesse, die einem geschützten Desktop zugeordnet sind, umfassen benutzerdefinierte UserInit-Prozesse. Solche Aufrufe schlagen in der Regel mit dem Fehler "Zugriff verweigert" fehl.

Anforderungen

   
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

OpenDesktop

Window Station- und Desktopfunktionen