c# - 设置注册表值时出现 NullReferenceException

标签 c# winforms registry

当我尝试将值设置为注册表项时,出现 NullReference 异常。下面是我的代码。有谁知道为什么吗?

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。如果 key 不存在,后者将返回 null。 key 很可能不存在,这就是为什么您在下一行中遇到空引用的原因。

关于c# - 设置注册表值时出现 NullReferenceException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/604998/

相关文章:

.net - 确定是否安装了 .NET 3.5 的最佳方法

c++ - 套接字配置中的 TCP 重传

c# - 如何在 ios xamarin studio 中生成 xml 文档文件?

c# - ASP.NET 404 http模块

c# - 如何使用 Visual Studio Express 2013 将 C# 接口(interface)实现/合并到一个简单的 C++ 程序中

c# - 如何查询 400 系统并将结果用作 ListView 控件的数据源?

c# - 我正在制作我的第一个加密程序,有什么建议吗?

Winforms-如何使MessageBox显示在MainForm的中心?

c# - 从另一个 FORM 取回隐藏的 FORM

c++ - 如何删除注册表中损坏的符号链接(symbolic link)