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