Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.048 Beiträge
 
Delphi 12 Athens
 
#3

AW: Akkumanagement (Notifications)

  Alt 5. Feb 2024, 15:53
Jupp, das Chaos der letzten Jahre mal bissl aufräumen ... wollte vor 'ner Weile ein/zwei Projekte machen, wo aber nichts so lief wie es sollte.
Drum versuche ich aktuell das Ganze in einer Test/Demo-App zum Laufen zu bringen und mal zusammenzufassen.


OK, bei IOCRL war ich jetzt noch garnicht vorbeigekommen.
Als Nächstes hatte ich einige Notifications geplant, wo man sich jeweils über GUIDs registriert. (wurde aber durch das Nicht-Aktualisierungsproblemchen aufgehalten)

Werde das IOCTL dann wohl aber erstmal angehn.
BATTERY_WAIT_STATUS und BATTERY_REPORTING_SCALE sieht aber so aus, wie im CallNrPowerInfo->Batter<State.

Aber das sind ja auch wieder "nur" Abfragen.
Was ich grade vermisse ist ja eine Notofocation, wo mir Windows sagt "Hey, die Batterie hat sich verändert ... schau dir mal die aktuellen Werte an" (anstatt da ständig mit einem Timer zu pollen)


Nervig war, dass ich zuletzt über paar Bugs in der alten WinAPI im Delphi stoperte, sowie dass Vieles einfach fehlt (und dann auch noch Schweigen oder gar Fehler in der Doku von Microsoft, beim Versuch so Einiges selbst nach Delphi zu übersetzen),
zuletzt dann die Hoffnung der neuen WinAPI, aber das sieht ja noch katastrophaler aus.
https://www.delphipraxis.net/214473-...vor-winmd.html


OHH, ein Problem mit großen Server-CPUs.

TThread.ProcessorCount sagt 32, aber eigentlich sind es 63 Kerne.
Und dann schlägt natürlich der Abruf der "ProcessorInfo" fehl, da der Array-Speicher zu gering reserviert wurde.




PS: Youtube im Firefox deaktiert die Monitor- und Standbytimeouts, siehe ExecutionState. (während der Wiedergabe)

Was mir auch noch aufgefallen war:
* im Taskmanager die %-Werte im Details-Tab stimmen oft garnicht (System ausgelastet, aber dort kein Prozess mit Auslastung zu sehn)
* auch stimmen oft die Werte unter Prozesse und Details nicht überein

* NtPowerInfo gibt mir die Frequenzen der Kerne (über WMI kommt man auch an sowas)
* aber im Taskmanager ... k.A. was der anzeigt ... hier z.B. unter "Leistung" oben rechts beim Namen 2.7 GHz, unten Basistakt 2,9 GHz (OK, WinServer2006 nennt es "Maximale Geschwindigkeit")
aber die großgeschriebene "aktuelle" Geschwindigkeit zeigt was an, das nichtmal annähernd dem ausProcessorInfo übereinstimmt (einzelner Kern, Minimal, Maximal, Durchschnitt oder sonstwas)


Die Laufzeit hab ich. Bei SystemPowerStatus sieht man auch das, was Windows überall anzeigt. (oben dei LifeTime)
OK, es stimmt nicht immer mit der Batterie überein (unten BatteryState), bzw. oben hängt etwas hinterher (aber egal, so lange es oben mit den Windows-Anzeigen korrespondiert)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu ( 5. Feb 2024 um 18:09 Uhr)
  Mit Zitat antworten Zitat