如何创建 REG_NONE 类型的注册表项?

如何创建 REG_NONE 类型的注册表项?

文件关联的信息存储在Windows 注册表分支HKLM\SOFTWARE\ClassesHKCU\SOFTWARE\Classes(等等)。那里的每个条目都可以有OpenWithProgIDs一个键,用于将其值中命名的程序添加到可从打开用上下文菜单中的条目。其中许多键都有REG_NONE类型。但是注册表编辑器不允许创建这种类型的密钥 - 这种类型不在可用密钥类型列表中新的上下文菜单的条目。

如何创建类型的注册表项REG_NONE以将新程序添加到列表中或重新创建以前删除的项?

答案1

我还需要在 HKCR 中创建一个 REG_NONE 键。

使用 regedit,我在 HKCR 中找到了现有文件关联,REG_NONE其 OpenWithProgIDs 分支下有一个键(例如HKCR\.mp3\OpenWithProgIDs)。我将这个注册表导出到一个.reg文件中。

然后,我使用记事本编辑导出的文件,并更改分支以匹配我想要的密钥的位置REG_NONE。我删除了列出的所有其他密钥,只留下我想要的一个 REG_NONE 密钥。如果您需要重命名 REG_NONE 密钥,也请这样做。

将文件重新导入到您的注册表中,它将添加新的键值REG_NONE

.reg文件如下所示:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\..etc..\keyname]
@=hex(0):

更改..etc..\keyname为实际的键名。@=hex(0):是创建元素的行REG_NONE

答案2

我需要做一些类似的事情,以便将特定的文件关联应用于不同的扩展。

创建具有适当名称的新二进制值(零长度)是可行的;我实际上并不需要它是 REG_NONE。

相关内容