prova con questo.
Inserisci il codice seguente nell'evento Closing della Form.
codice:
Dim O As System.Diagnostics.StackTrace = New System.Diagnostics.StackTrace(True)
Dim F As System.Diagnostics.StackFrame
F = O.GetFrame(7)
Select Case F.GetMethod.Name.ToString
Case "SendMessage"
MsgBox("Chiuso da codice")
Case "CallWindowProc"
MsgBox("Chiuso con la X o ALT+F4")
Case "DispatchMessageW"
MsgBox("Chiuso dal Task Manager")
Case Else
MsgBox("E' mancata la corrente elettrica")
End Select
spero vada bene.
Ciao.