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.