Worn Geschrieben 5. September 2006 Teilen Geschrieben 5. September 2006 Hy, kann mir jmd. sagen wie ich prüfen kann ob der PC gerade heruntergefahren wird? Ich hab ein Programm welches im Tray liegt und das soll in dem Fall nicht fragen ob es geschlossen werden soll sondern dies einfach tun! Ich hatte dort: system.environment.HasShutdownStartetd oder das klappt leider nicht. Danke für Infos ben PS: Ich nutze Visual Studio Express / FW 2.0 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
k4fu Geschrieben 5. September 2006 Teilen Geschrieben 5. September 2006 probier mal das Private Const WM_QUERYENDSESSION As Int32 = &H11 Private Const WM_ENDSESSION As Int32 = &H16 Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message) If m.Msg = WM_QUERYENDSESSION Then m.Result = New IntPtr(1) ElseIf m.Msg = WM_ENDSESSION Then If m.WParam.ToInt32() = 1 Then Me.Close() End If End If MyBase.WndProc(m) End Sub Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Worn Geschrieben 5. September 2006 Autor Teilen Geschrieben 5. September 2006 Hm, da musst du mir auf die Sprünge helfen.. Wie soll ich das einbauen? Ich dachte eher an eine Abfrage im Form_Closing Event des Programms: Private Sub frm_bdr_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing If Not System.Environment.HasShutdownStarted = True Then If MsgBox("XXXXX", MsgBoxStyle.YesNo, "Frage:") = MsgBoxResult.Yes Then NotifyIcon.Visible = False Else e.Cancel = True End If End If End Sub So in der Art... geht nur nicht. Die Procedur die du mir anbietest kann mir ja keinen Rückgabewert geben? Also wohin damit? Grüße Ben Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
k4fu Geschrieben 5. September 2006 Teilen Geschrieben 5. September 2006 die funktion wird staendig im hintergrund aufgerufen... diese stellt dann fest, ob windows runtergefahren wird du brauchst sie eigentlich nur einzufügen... die variablen halt am anfang ganz oben einfügen! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Worn Geschrieben 5. September 2006 Autor Teilen Geschrieben 5. September 2006 Okay hab ich gerade auch rausgefunden! Hab das nochmal auf VB Fun gefunden da stand noch eine Erklärung dabei. Ich teste mal eben. Meld mich dann nochmal! Grüße ben Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Worn Geschrieben 5. September 2006 Autor Teilen Geschrieben 5. September 2006 Hmm.. geht leider nicht.. kanns ja auch nicht debuggen wenn ich den Rechner dann Herunterfahre bzw. Neustarte.. macht der da noch einen Unterschied? Eigentlich wird der Rechner ja bei einem Neustart auch erstmal runtergefahren. Er hat nun meine MSGBOX sogar 2 mal gebracht! Grüße Ben PS: Ich vermute das es in Visual Studio irgendwie einfacher geht! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Worn Geschrieben 5. September 2006 Autor Teilen Geschrieben 5. September 2006 Hey, na also ähh es ist mir fast peinlich. Aber willkommen in der Welt des Framworks 2! Ich hab das Ereignis form_Closing. Dort gibt es den Parameter e. Der hat eine Methode e.closeReason! Tja dann sagt man eben if e.closeReason = Windoooofshutdown then .... Und schon läuft die Kiste! Grüße Ben Danke für die Hilfe zur Selbsthilfe Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.