Impedir que windows se reinicie
El .NET framework es bastante potentillo, alguna que otra vez es necesario recurrir al API de windows, pero normalmente ya hay un wrapper o una función en .NET mejor o peor que vale para lo mismo.
Pues bien, estoy cansado de que cuando Microsoft me envía algún parche a mi ordenador, siempre quiera reiniciar mi máquina. Pues bien, es solo 5 minutos se puede capturar el "evento" del sistema de "Windows Shutdow" y hacer que no se reinicie.
Aquí va esta pequeña aplicación Winforms Visual Basic .NET (por cierto, odio el VB ;)
Sub PreventShutdown()
AddHandler SystemEvents.SessionEnding, AddressOf PreventShutdownHelper
AddHandler SystemEvents.SessionEnding, AddressOf PreventShutdownHelper
End Sub
Sub PreventShutdownHelper(ByVal sender As Object, ByVal args As SessionEndingEventArgs)
If args.Reason = SessionEndReasons.SystemShutdown Then
args.Cancel = True
End If
End Sub
Yo hago una cosa más sencilla.
Inicio --> Panel de control --> Centro de seguridad --> Actualizaciones automáticas --> Descargar actualizaciones por mí, pero permitirme elegir cuándo instalarlas --> Aceptar
De este modo al no instalarlas no te reinicia. Lo único malo es que se pone a instalarlas cuando vas a apagar el ordenador y puede tardar 3 o 4 minutillos... Como llegues tarde a un sitio fastidia un poco.
Viajero me lo apunto... en realidad cuando puse el truco estaba pensando más en la función de .NET que en la utilidad de mi ejemplo...