Impedir que se cierre la sesión de Windows
Artículo por Club Developers · 10 May 2006
2007 vistas
Para ello tendremos que añadir las siguientes líneas de código en nuestra clase, lo que permitirá detectar el intento de cierre de sesión y anularlo:
vbnet
' Mensaje de Windows QueryEndSession Private Const WM_QUERYENDSESSION As Integer = &H11 ' flag que indica si la sesión se va a cerrar Private _systemShutdown As Boolean = False ' redefinición de la función virtual WndProc Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message) If m.Msg = WM_QUERYENDSESSION Then _systemShutdown = True End If MyBase.WndProc(m) End Sub ' Handler evento closing Private Sub Form1_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing ' si se ha enviado el mensaje de cierre, lo anulamos If _systemShutdown Then e.Cancel = True _systemShutdown = False MessageBox.Show("Cierre de la sesión Windows anulada") End If End Sub