关于Registry CreateSubKey的简单问题

发布于 2024-10-20 18:38:24 字数 648 浏览 3 评论 0原文

为什么这不起作用?我试图在 [HKEY_LOCAL_MACHINE\SOFTWARE\MyService] 下创建注册表项,但没有创建任何内容。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using Microsoft.Win32;

namespace RegistryKey
{
    class Program
    {
        static void Main(string[] args)
        {
            const string SUB_KEY_NAME = @"SOFTWARE\MyService";

            // Create a subkey named MyService under HKEY_LOCAL_MACHINE.
            Registry.LocalMachine.CreateSubKey(SUB_KEY_NAME);
        }
    }
}

更新:没关系。我是个白痴。我使用远程注册表编辑器检查注册表,相信它会显示与 regedit 相同的内容。没有!我可以使用 regedit 查看路径。

Why doesn't this work? I am trying to create a registry key under [HKEY_LOCAL_MACHINE\SOFTWARE\MyService], but nothing is created.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using Microsoft.Win32;

namespace RegistryKey
{
    class Program
    {
        static void Main(string[] args)
        {
            const string SUB_KEY_NAME = @"SOFTWARE\MyService";

            // Create a subkey named MyService under HKEY_LOCAL_MACHINE.
            Registry.LocalMachine.CreateSubKey(SUB_KEY_NAME);
        }
    }
}

Update: Never mind. I'm an idiot. I used the Remote registry Editor to inspect the registry in the belief that it would show the same as regedit. It didn't! I can see the path using regedit.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

我爱人 2024-10-27 18:38:24

您没有 HKLM 的写入权限。如果您想在此处编写,那么您需要:

  • 以提升的用户身份运行该进程,或者。
  • 仅在安装期间尝试写入 HKLM。

You don't have write access to HKLM. If you want to write here then you need to either:

  • run the process as an elevated user, or.
  • only attempt to write to HKLM during install.
为你拒绝所有暧昧 2024-10-27 18:38:24

尝试使用以下代码:

RegistryKey regkey = Registry.CurrentUser;
regkey = regkey.CreateSubKey(SUB_KEY_NAME); //this is the path then you create yours keys
regkey.SetValue("Install", "ok"); //name of key exp:(install) and then the value exp:(ok)

Try with this code:

RegistryKey regkey = Registry.CurrentUser;
regkey = regkey.CreateSubKey(SUB_KEY_NAME); //this is the path then you create yours keys
regkey.SetValue("Install", "ok"); //name of key exp:(install) and then the value exp:(ok)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文