3

我在output1和中得到不同的结果output2。虽然第一个给了我在注册表中实际看到的值,但后者只给了我默认值。我想念什么?

String output1 = Registry.GetValue(
  @"HKEY_USERS\blobb", "beep", "nope!") as String;

String output2 = Registry.Users.GetValue(
  @"blobb\beep", "nope!") as String;

我已经尝试了很多不同的输入字符串变体,但没有一个给我正确的值。

4

1 回答 1

3

Registry.Users.GetValue正在根 USERS 键中查找名为 'blobb\beep' 的值

要获得与第一个示例相同的结果,您需要类似

using (var blobb = Registry.Users.OpenSubKey("blobb"))
{
    String output2 = blobb.GetValue("beep", "nope!") as String
}
于 2012-11-08T14:09:11.143 回答