Cómo bloquear la estación de trabajo
En el ejemplo siguiente se bloquea la estación de trabajo mediante la función LockWorkStation . El sistema muestra el cuadro de diálogo Bloquear estación de trabajo . El texto del cuadro de diálogo indica que la estación de trabajo está en uso y ha sido bloqueada por el usuario.
#include <windows.h>
#include <stdio.h>
#pragma comment( lib, "user32.lib" )
void main()
{
// Lock the workstation.
if( !LockWorkStation() )
printf ("LockWorkStation failed with %d\n", GetLastError());
}
Para determinar si la estación de trabajo está bloqueada, pruebe si la ventana está visible.
El usuario o un administrador pueden desbloquear la estación de trabajo. Para desbloquear el sistema, presione Ctrl+Alt+Supr e inicie sesión. Para recibir notificaciones cuando el usuario inicie sesión, use la función WTSRegisterSessionNotification para registrarse para recibir mensajes WM_WTSSESSION_CHANGE . Cuando se recibe este mensaje, compruebe si el parámetro wParam es igual a WTS_SESSION_LOCK.