2

ReadDirectoryChangesWファイルシステムの特定の部分を監視するために使用しています。変更の性質についての手がかりとともに、変更されたファイルまたはディレクトリへの部分的なパス名をかなり適切に提供します。これは私を甘やかしたかもしれません。

RegNotifyChangeKeyValueまた、レジストリの特定の部分を監視する必要がありますが、非常に粗いように見えます。与えられたキーの下の何かが変更されたことを教えてくれますが、それが何であったかを教えたくないようです。残念!

問題のレジストリの部分は任意に深いため、すべてのサブキーを列挙してRegNotifyChangeKeyValueそれぞれを呼び出すことは、最終的に克服する必要があるため、おそらくホットなアイデアではありませんMAXIMUM_WAIT_OBJECTS. さらに、 に渡したキーのセットを調整する必要がありますRegNotifyChangeKeyValue。これは、毎回サブキーを列挙せずに行うのにかなりの労力を要し、かなりの量の目的を無効にすることになります。

何か案は?

4

1 に答える 1

1

残念ながらそうです。関心のあるすべての値をコードにキャッシュし、変更トリガーを取得するたびにこのキャッシュを自分で更新するか、関心のある個々のデータ項目ごとに 1 つずつ複数のウォッチャーを設定する必要があります。ご指摘のとおり、2 番目のソリューションはすぐに扱いにくくなります。

必要なコードを .Net に実装できれば、RegistryEvent とそのサブクラスを介して同じ効果をよりエレガントに得ることができます。

于 2010-10-02T15:54:24.820 に答える