0

夕方、

WinCE でのレジストリ値の監視についてアドバイスが必要です。レジストリの値を監視し、変更されたときにイベントを発生させる必要がある Windows フォーム アプリケーションを作成しています。

よろしくお願いします。

4

1 に答える 1

0

PInvoke コードを使用してこれを実装することができました。

   [DllImport("coredll.dll", SetLastError = true)]
    static extern int RegOpenKeyEx(UIntPtr hKey, string lpSubKey, uint ulOptions, int samDesired, out UIntPtr phkResult);

    [DllImport("coredll.dll", SetLastError = true)]
    static extern UIntPtr CeFindFirstRegChange(UIntPtr hKey, [In, MarshalAs(UnmanagedType.Bool)] bool bWatchSubtree, uint dwNotifyFilter);

    [DllImport("coredll.dll", SetLastError = true)]
    public static extern UInt32 WaitForSingleObject(UIntPtr Handle, UInt32 Wait);

    [DllImport("coredll.dll", SetLastError = true)]
    static extern Int32 CeFindNextRegChange(UIntPtr hChangeHandle);

    [DllImport("coredll.dll", SetLastError = true)]
    static extern Int32 CeFindCloseRegChange(UIntPtr hChangeHandle);

    [DllImport("coredll.dll", SetLastError = true)]
    public static extern int RegCloseKey(UIntPtr hKey);

また、WaitForSingleObject を使用します。

于 2012-06-08T09:52:26.093 に答える