使用c#删除注册表项中的所有值

本文关键字:删除 注册表 使用 | 更新日期: 2023-09-27 18:19:10

我很难找到一种方法来删除注册表项内的所有值,而不实际删除键本身。我不希望删除密钥,因为我不希望为密钥重新添加适当的权限。

我试图有一个小的方法运行,简单地清除值:

HKEY_CURRENT_USER前景软件'微软办公室' ' 15.0 ' ' '弹性' DisabledItems

我们有一个插件,Outlook定期在这里卡住,我们的技术人员必须深入这个键并删除值,重新启动Outlook,一切正常。

我想我们可以确定值的确切名称,但那不会很有趣:),因为值在这个键中命名的方式,哪一个指向正确的加载项是不明显的

使用c#删除注册表项中的所有值

我同意Ron Beyer的观点。我想这可能就是你要找的?根据需要编辑注册表路径和HKLM/HKCU。

        string keyPath64Bit = "SOFTWARE''Wow6432Node''Krondorian";
        RegistryKey localMachine = RegistryKey.OpenBaseKey(Microsoft.Win32.RegistryHive.LocalMachine, RegistryView.Registry64);
        RegistryKey key64Bit = localMachine.OpenSubKey(keyPath64Bit, true);
        if (key64Bit != null)
        {
            var namesArray = key64Bit.GetValueNames();
            foreach (string valueName in namesArray)
            {
                key64Bit.DeleteValue(valueName);
            }
        }