Seite 2 von 3

Re: NetworkServerEvent erkennt Standby nicht

Verfasst: 24.04.2013 10:33
von helpy
Etwas mehr Info zum Event PBT_APMSUSPEND: http://msdn.microsoft.com/en-us/library ... [b]Remarks[/b]

An application should process this event by completing all tasks necessary to save data. This event may also be broadcast, without a prior PBT_APMQUERYSUSPEND event, if an application or device driver uses the SetSystemPowerState function to force suspension.

The system allows approximately two seconds for an application to handle this notification. If an application is still performing operations after its time allotment has expired, the system may interrupt the application.

Windows Server 2003 and Windows XP: Applications are allowed up to 20 seconds to respond to the PBT_APMSUSPEND event. [/quote]
Auf neueren Betriebssystemen hat das Programm also ca. 2 (zwei) Sekunden Zeit, um irgendetwas zu machen, bevor das Programm unterbrochen wird.
Ob es immer möglich ist in dieser Zeit eine Nachricht an den Server abzusetzen, ist fraglich.

Re: NetworkServerEvent erkennt Standby nicht

Verfasst: 24.04.2013 21:16
von Moxl
Ahhhhhh danke dir :bounce:

Re: NetworkServerEvent erkennt Standby nicht

Verfasst: 24.04.2013 21:19
von helpy
Bitte ;-)

Die beiden wichtigsten Events für Dich sind:

Code: Alles auswählen

PBT_APMSUSPEND
PBT_APMRESUMESUSPEND

Re: NetworkServerEvent erkennt Standby nicht

Verfasst: 24.04.2013 21:24
von Moxl
jo das habe ich schon gemerkt :)

danke dir vielmals :D :allright:

Re: NetworkServerEvent erkennt Standby nicht

Verfasst: 12.01.2014 16:53
von Moxl
Hallo ich bins mal wieder :mrgreen:

welcher von den konstanten beudeten jetzt das der pc heruntergefahren wird?

Re: NetworkServerEvent erkennt Standby nicht

Verfasst: 12.01.2014 16:57
von RSBasic
Da kannst du im Callback z.B. #WM_ENDSESSION abfragen.

Re: NetworkServerEvent erkennt Standby nicht

Verfasst: 12.01.2014 17:05
von ts-soft
Moxl hat geschrieben:welcher von den konstanten beudeten jetzt das der pc heruntergefahren wird?
Das sagen doch schon die sprechenden Konstanten :wink:
PBT_APMSUSPEND = In den Suspendmodus
PBT_APMRESUMESUSPEND = Suspend wieder verlassen

Re: NetworkServerEvent erkennt Standby nicht

Verfasst: 12.01.2014 19:55
von Moxl
ja suspend usw ist doch der standby modus usw aber ich meine doch pc herunterfahren :allright:

Re: NetworkServerEvent erkennt Standby nicht

Verfasst: 13.01.2014 18:29
von Moxl
also wenn ich das jetzt so mache:

Code: Alles auswählen

Procedure WindowCallback( hWnd, uMsg, wParam, lParam )
  Select uMsg
      
      Case #WM_ENDSESSION
        ;pc wird heruntergefahren...
         
      Case #WM_POWERBROADCAST
         
         Select wParam
            Case #PBT_APMPOWERSTATUSCHANGE
            Case #PBT_APMRESUMEAUTOMATIC
            Case #PBT_APMRESUMESUSPEND
              ;pc kommt aus standby
            Case #PBT_APMSUSPEND
              ;pc geht in standby
            Case #PBT_POWERSETTINGCHANGE
            Case #PBT_APMBATTERYLOW
            Case #PBT_APMOEMEVENT
            Case #PBT_APMQUERYSUSPEND
            Case #PBT_APMQUERYSUSPENDFAILED
            Case #PBT_APMRESUMECRITICAL

         EndSelect
         
      Default
         
   EndSelect
   
   ProcedureReturn #PB_ProcessPureBasicEvents
EndProcedure
dann funktioniert das leider mit dem herunterfahren nicht :/ mit standby usw funktioniert alles wunderbar :freak:

Re: NetworkServerEvent erkennt Standby nicht

Verfasst: 13.01.2014 20:10
von RSBasic
Also bei mir hat #WM_ENDSESSION immer funktioniert und das sollte eigentlich bei dir auch funktionieren. Vorausgesetzt es sind keine zeitintensive Vorgänge, die durchgeführt werden müssen. Man sollte nur das wichtigste speichern, weil sonst die Anwendung gekillt wird, wenn der Vorgang länger als ein paar Sekunden dauert.