注册表子项不可见?C#

用户名

因此,我尝试将注册表系统实施到正在构建的程序中。到目前为止,程序的主程序在打开,编辑或删除与此键关联的任何值时都没有问题。

但是,我的清理程序会执行此操作,并且当我告诉它使用以下命令向我显示所有子项时:

Registry.LocalMachine.OpenSubKey (regappend + reg, true).GetSubKeyNames ();

它告诉我该值不存在或为null,因此无法从中获取信息。

private static readonly string regappend = "SOFTWARE\\";
private static string reg = "EL\\Main";

// Malfunctioning code:

using (RegistryKey myKey = Registry.LocalMachine.OpenSubKey (regappend + reg, true)) 
{
    if (myKey != null) 
    {
        foreach (string s in myKey.GetValueNames()) 
        {
            Console.WriteLine (s);
        }

        Console.WriteLine (myKey + "\n" + myKey.GetValue ("F") + "\n");
    }
}

// Working Code:

using (RegistryKey myKey = Registry.LocalMachine.OpenSubKey (regappend + reg, true)) 
{
    if (myKey.GetValue ("F") != null) 
    {
        f = (string)myKey.GetValue ("F");

        if (debugmode == true) 
        {
            Console.WriteLine (f);
        }
    }
}

变量始终相同。

我究竟做错了什么?

鲁弗斯·L

使用以下代码创建密钥后,您的程序对我来说运行良好:

using (RegistryKey key = Registry.LocalMachine.OpenSubKey("Software", true))
{
    key.CreateSubKey("El\\Main").SetValue("F", "bar");
}

请注意,在Regedit中查看时,密钥实际上位于(在我的机器上)以下位置:

HKLM\Software\Wow6432Node\El\Main

您未获得期望值的原因可能是您在注册表中查找了错误的位置。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

C#获取注册表子项的值

来自分类Dev

列出和删除C#中的注册表子项

来自分类Dev

遍历注册表并获取所有子项和C#中RegistryKey中的值

来自分类Dev

从注册表C#读取值

来自分类Dev

C#写入注册表

来自分类Dev

从注册表C#获取参数

来自分类Dev

从注册表C#读取值

来自分类Dev

尽管具有 C# 管理员权限,但无法为注册表子项创建/写入值

来自分类Dev

在注册表子项中搜索值

来自分类Dev

无法打开注册表子项

来自分类Dev

在C ++中枚举HKEY_LOCAL_MACHINE \ SOFTWARE中的注册表子项

来自分类Dev

如何通过C#编辑远程注册表

来自分类Dev

从注册表C#检查Windows版本

来自分类Dev

如何通过C#编辑远程注册表

来自分类Dev

C#如何从注册表中读取MultiString

来自分类Dev

在C#中删除单个注册表值

来自分类Dev

无法在注册表中查看certian子项

来自分类Dev

c#仅在注册表值名称已存在的情况下设置新的注册表值

来自分类Dev

JavaFX ToggleButton 不可见,但已注册为 Children

来自分类Dev

使用 Geode C# 本机客户端在类型注册表中注册 PDX 类型

来自分类Dev

C ++删除不可见的面孔VBO

来自分类Dev

输入不可见的c ++迷宫游戏

来自分类Dev

无法通过系统注册表中的递归打印子项的子项

来自分类Dev

容器注册表TYPO3不可用

来自分类Dev

在C中更改注册表值

来自分类Dev

如何在类库中使函数“不可见” C#

来自分类Dev

C#线程:新线程中的控制台应用程序不可见

来自分类Dev

保持按钮不可见,直到单击RadioButton为止C#

来自分类Dev

C#类库“使程序集COM可见”为灰色或不可用