NetworkServerEvent erkennt Standby nicht

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
helpy
Beiträge: 636
Registriert: 29.08.2004 13:29

Re: NetworkServerEvent erkennt Standby nicht

Beitrag 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.
Windows 10
PB Last Final / (Sometimes testing Beta versions)
Moxl
Beiträge: 150
Registriert: 26.10.2012 13:19

Re: NetworkServerEvent erkennt Standby nicht

Beitrag von Moxl »

Ahhhhhh danke dir :bounce:
Benutzeravatar
helpy
Beiträge: 636
Registriert: 29.08.2004 13:29

Re: NetworkServerEvent erkennt Standby nicht

Beitrag von helpy »

Bitte ;-)

Die beiden wichtigsten Events für Dich sind:

Code: Alles auswählen

PBT_APMSUSPEND
PBT_APMRESUMESUSPEND
Windows 10
PB Last Final / (Sometimes testing Beta versions)
Moxl
Beiträge: 150
Registriert: 26.10.2012 13:19

Re: NetworkServerEvent erkennt Standby nicht

Beitrag von Moxl »

jo das habe ich schon gemerkt :)

danke dir vielmals :D :allright:
Moxl
Beiträge: 150
Registriert: 26.10.2012 13:19

Re: NetworkServerEvent erkennt Standby nicht

Beitrag von Moxl »

Hallo ich bins mal wieder :mrgreen:

welcher von den konstanten beudeten jetzt das der pc heruntergefahren wird?
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: NetworkServerEvent erkennt Standby nicht

Beitrag von RSBasic »

Da kannst du im Callback z.B. #WM_ENDSESSION abfragen.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: NetworkServerEvent erkennt Standby nicht

Beitrag 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
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Moxl
Beiträge: 150
Registriert: 26.10.2012 13:19

Re: NetworkServerEvent erkennt Standby nicht

Beitrag von Moxl »

ja suspend usw ist doch der standby modus usw aber ich meine doch pc herunterfahren :allright:
Moxl
Beiträge: 150
Registriert: 26.10.2012 13:19

Re: NetworkServerEvent erkennt Standby nicht

Beitrag 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:
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: NetworkServerEvent erkennt Standby nicht

Beitrag 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.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Antworten