English 中文(简体)
设置注册表值时出现空引用异常。
原标题:
  • 时间:2009-03-03 03:31:12
  •  标签:

当我试图为注册表键设置值时,我会收到一个NullReference Exception异常。以下是我的代码。有没有人知道为什么?

using System;
using Microsoft.Win32;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button2_Click(object sender, EventArgs e)
        {
           RegistryKey myKey = Registry.CurrentUser.OpenSubKey("SOFTWARE\Microsoft\Windows\Current Version\Policies\System", true);
            myKey.SetValue("DisableTaskMgr", 0, RegistryValueKind.DWord);

        }
    }
}
问题回答

尝试使用CreateSubKey而不是OpenSubKey。后者会返回null,如果键不存在。很可能该键不存在,这就是为什么你在下一行遇到null引用的原因。

当前版本应该是一个词。 即CurrentVersion。

编辑:我也同意Jared的意见,你也应该使用CreateSubKey。

问题出在当前版本之间的空格。





相关问题
热门标签