Função SwitchDesktop (winuser.h)
Torna a área de trabalho especificada visível e a ativa. Isso permite que a área de trabalho receba a entrada do usuário. O processo de chamada deve ter DESKTOP_SWITCHDESKTOP acesso à área de trabalho para que a função SwitchDesktop tenha êxito.
Sintaxe
BOOL SwitchDesktop(
[in] HDESK hDesktop
);
Parâmetros
[in] hDesktop
Um identificador para a área de trabalho. Esse identificador é retornado pelas funções CreateDesktop e OpenDesktop .
Essa área de trabalho deve ser associada à estação de janela atual para o processo.
Valor retornado
Se a função for bem-sucedida, o valor retornado será diferente de zero.
Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError. No entanto, SwitchDesktop define apenas o último erro para os seguintes casos:
- Quando a área de trabalho pertence a uma estação de janela invisível
- Quando hDesktop é um identificador inválido, refere-se a uma área de trabalho destruída ou pertence a uma sessão diferente da do processo de chamada
Comentários
A função SwitchDesktop falhará se a área de trabalho pertencer a uma estação de janela invisível. SwitchDesktop também falha quando chamado de um processo associado a uma área de trabalho protegida, como as áreas de trabalho WinLogon e ScreenSaver. Os processos associados a uma área de trabalho protegida incluem processos UserInit personalizados. Essas chamadas normalmente falham com um erro de "acesso negado".
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | winuser.h (inclua Windows.h) |
Biblioteca | User32.lib |
DLL | User32.dll |
Conjunto de APIs | ext-ms-win-ntuser-windowstation-l1-1-0 (introduzido no Windows 8) |