Verfasst: 11.05.2014, 18:26
Hallo Christoph,
RegNotifyChangeKeyValue ist ein sehr nützliche Funktion, die das System bereitstellt. Anstatt z.B. In einer Schleife ständig RegQueryValueEx aufzurufen und alten Wert mit neuem Wert zu vergleichen, stellt das System eine Reihe von Events zur Verfügung. Eine Schleife für so etwas wäre sehr ineffizient.
Ein Programm registriert sich also besser für solche Änderungen und arbeitet dann ganz normal weiter bis es über eine Änderung informiert wird.
Nun ist es leider so, dass das Ereignis nicht den geänderten Wert zurück liefert. Das sieht man schon, wenn man sich die Signatur der API ansieht. Und es hat den einfachen Grund, dass unterhalb eines Schlüssels unzählige Einträge mit verschiedenen Datentypen stehen können, also eine komplexe Struktur.
Ein Programm wird also, nachdem das Ereignis eine Änderung gemeldet hat, wieder RegQueryValueEx aufrufen um einen vermeintlich geänderten Wert in Clock Rate zu lesen. Damit sind wir wieder da, wo wir gestern waren.
Gruß Erwin
RegNotifyChangeKeyValue ist ein sehr nützliche Funktion, die das System bereitstellt. Anstatt z.B. In einer Schleife ständig RegQueryValueEx aufzurufen und alten Wert mit neuem Wert zu vergleichen, stellt das System eine Reihe von Events zur Verfügung. Eine Schleife für so etwas wäre sehr ineffizient.
Ein Programm registriert sich also besser für solche Änderungen und arbeitet dann ganz normal weiter bis es über eine Änderung informiert wird.
Nun ist es leider so, dass das Ereignis nicht den geänderten Wert zurück liefert. Das sieht man schon, wenn man sich die Signatur der API ansieht. Und es hat den einfachen Grund, dass unterhalb eines Schlüssels unzählige Einträge mit verschiedenen Datentypen stehen können, also eine komplexe Struktur.
Ein Programm wird also, nachdem das Ereignis eine Änderung gemeldet hat, wieder RegQueryValueEx aufrufen um einen vermeintlich geänderten Wert in Clock Rate zu lesen. Damit sind wir wieder da, wo wir gestern waren.
Gruß Erwin