私はWinCE 5デバイスを使って開発しています。Windows CEハイブサブキーのフラッシュ登録
私は、永続的な媒体上にあるハイブベースのレジストリに対する変更を保存しています。私のキーはHKLM \ Softare \ AppNameの下にあります。参照のためにHKLM \ RegPersisted = 1。
コンパクトフレームワークのサブキーでFlush()を呼び出しても、すぐに電源を切ると変更が保持されないことがわかりました。私は
Microsoft.Win32.Registry.LocalMachine.Flush();
を呼び出す場合
同様に、私は同じ結果を得ます。
私はHKLMのためのuintで
[DllImport("coredll.dll", EntryPoint = "RegFlushKey", SetLastError = true)]
public static extern uint RegFlushKey(uint hKey);
を呼び出す場合、私はすぐ後にオフにした場合しかし、その後、変更が持続しません。
どのようなアイデアを定期的な.Netバージョンが動作していないのですか?あるいはおそらく彼らは働いていますが、なんらかの理由でそれは怠け者ですが、coredllの直接版は怠け者ではありませんか?
ありがとうございました。 Compact Frameworkのための(C:\Program Files\Microsoft.NET\SDK\CompactFramework\v2.0\Debugger\BCL
に位置)mscoreeに反射板を使用して
そのおかげでありがとう。私は100%確実ではありません(残念ながら、圧力がこのデッドラインから外れるまで私の実験を繰り返すことはできません)が、私がしたのは:a)設定値、フラッシュキー(.net)、リブート、値が正しくありませんでした。 a)設定値、HKLM(.net)をフラッシュし、リブート、チェックキーを押します。値が正しくありませんでした。 c)値を設定し、p/invoke、reboot、checkキーでフラッシュします。間違いなく正しい値でした。私が言うように、この繰り返しは1回だけでしたが、a)とb)が確かに少なくとも「時には」働かないことを実証するのに十分でした。 – Nik