Deseo que, una vez finalizada una aplicación en Visual Basic, no se pueda seguir utilizando Windows. También podría servir que se ejecute otra aplicación que disponga de todo el control del ordenador y no se pueda pasar a otra mediante la pulsación de Alt+Tabulador, por ejemplo.
1 Respuesta
Respuesta
1
1
Anónimo
Perdona por el retraso. Lo único que encontrado para lo que me pedías es una rutina para apagar el sistema. Const EWX_LOGOFF = 0 Const EWX_SHUTDOWN = 1 Const EWX_REBOOT = 2 Const EWX_FORCE = 4 Declare Function ExitWindowsEx Lib "user32" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long Sub Salir_windows(ByVal nExitOption As Long) 'sub rutina peligrosa, no ejecutar 'utiliza: 'funciones api ' Declare Function ExitWindowsEx Lib "user32" Alias "ExitWindowsEx" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long 'resultado ' hace varias cosas dependiendo de la variable ' EWX_FORCE: Fuerza el apagado del sistema ' EWX_LOGOFF: Acaba los procesos y apaga el sistema ' EWX_SHUTDOWN: Si es posible desconecta el sistema ó para el sistema ' EWX_REBOOT: Resetea el sistema ' estos parametros se pueden combinar 'notas: esta funcion actua en segundo plano despues de ejecutarla descarga el programa 'la linea que apaga es la de la funcion api (ExitWindowsEx...) 'Const EWX_LOGOFF = 0 'Const EWX_SHUTDOWN = 1 'Const EWX_REBOOT = 2 'Const EWX_FORCE = 4 Dim n As Integer, mensaje As String, titulo As String mensaje = "Salir de windows" titulo = "Salir windows" n = MsgBox(mensaje, vbYesNo + vbInformation + vbDefaultButton2, titulo) If n = vbNo Then 'ha presionado no Exit Sub End If n = ExitWindowsEx(nExitOption, 0) 'resetear la computadora End Sub Posdata: En el caso de que modifiques esta rutina ruego por favor que me lo notiques.