价值我想从注册表值,但是他说:从注册表获得
对象引用不设置到对象的实例
关键在具体路径存在
RegistryKey key = Registry.LocalMachine.OpenSubKey("SOFTWARE\\MICROSOFT\\WINDOWS");
string st = key.GetValue("LastVerify").ToString();
价值我想从注册表值,但是他说:从注册表获得
对象引用不设置到对象的实例
关键在具体路径存在
RegistryKey key = Registry.LocalMachine.OpenSubKey("SOFTWARE\\MICROSOFT\\WINDOWS");
string st = key.GetValue("LastVerify").ToString();
您需要打开密钥,而不是创建它。
using (var key = Registry.LocalMachine.OpenSubKey("SOFTWARE\\MICROSOFT\\WINDOWS"))
{
if (key != null)
{
var value = key.GetValue("LastVerify");
if (value != null)
{
var lastVerify = value; // cast to whatever type LastVerify is
}
}
}
再次值为空,我测试了这种方式并编辑了问题 – SajjadZare
@SajjadZare所以?如果没有任何价值,它将为空...确保问题涵盖了你实际想要达到的目标... –
我为注册表中的值设置,现在它具有价值 – SajjadZare
您得到的NullReferenceException意味着该调用中的某个内容将返回'null'。尝试将其分解为单独的语句,以便您可以确切地看到'null'的位置。 –
您正在创建一个新密钥并从中获取价值。当然,这个值将是'null',因为它还不存在 –
我在第一个例子中看到'CreateSubKey',在第二个例子中看到'OpenSubKey'。你能解释你在做什么,或者只是一种类型。 –