删除 Windows CE 5.0 上的注册表项

本文关键字:注册表 Windows CE 删除 | 更新日期: 2023-09-27 18:36:44

使用 Visual Studio 2005 和 C# (CF v2.0)。以下代码删除 Windows CE 6.0 上的注册表项:

RegistryKey key_test = Registry.LocalMachine.CreateSubKey("Test");
RegistryKey key_users = key_test.CreateSubKey("Users");
key_users.DeleteSubKey("User1");  // Yes, this key does exist!
key_users.Flush();
// Now power down the device; on power up, key is gone

但是完全相同的代码无法删除Windows CE 5.0上的密钥。调用"删除子项",然后手动检查注册表后,该项似乎已消失。但是当您重新打开设备电源时...钥匙回来了!

我可以检测到操作系统,因此我随后尝试了Windows CE 5.0的变体:

key_users.DeleteSubKeyTree("User1");    // DeleteSubKey also fails
key_users.Close();

但这也无法删除密钥。同样,密钥似乎消失了,但在重新打开设备电源后,密钥又回来了。我已经将上面的代码封装在 try-catch 块中,没有引发异常,代码运行正常,只是不起作用。有什么想法吗?我是否需要在 Windows CE 5.0 上执行一些我缺少的额外操作?添加键没有问题,简单的"刷新"即可添加键。

删除 Windows CE 5.0 上的注册表项

似乎您的 ce5 设备没有永久注册表。您是否尝试创建密钥?重新启动后它还在那里?