为什么在注册表项中设置了 hidebasedonvelocityid 标志?

use*_*694 10 windows-registry windows-10-v1607

当我发现那里已经有一个文件夹时,我正在进入我的注册表以向文件夹添加命令提示符快捷方式,如下所示:

[HKEY_CLASSES_ROOT\Directory\shell\cmd]
@="@shell32.dll,-8506"
"Extended"=""
"HideBasedOnVelocityId"=dword:006698a6
"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT\Directory\shell\cmd\command]
@="cmd.exe /s /k pushd \"%V\""
Run Code Online (Sandbox Code Playgroud)

但是,当我右键单击时,该条目没有显示在我的上下文菜单中。对我来说唯一有意义的是 HideBasedOnVelocityId 键,因为它不会被显示。有谁知道为什么?我应该输入一个 dword 值来让它工作吗?

mag*_*981 9

更改为HideBasedOnVelocityIdShowBasedOnVelocityId再次启用命令提示符条目

在此处输入图片说明

微软这样做是为了用 Powershell 替换 cmd.exe

  • 如果 Regedit 告诉您没有执行更改的权限,则右键单击 cmd / powershell 键(文件夹图标),选择权限...,选择高级,在“所有者”部分,所有者应该是“TrustedInstaller” ,单击“更改...”并将管理员组设置为所有者。单击确定,确定。最后回到权限窗口中选择管理员组并授予他们“完全”权限。现在您应该可以更改这些键了。 (7认同)
  • 至于更改密钥的所有权,确实需要进行此更改。但我们应该想知道,从长远来看,当“受信任的安装者”不再是所有者时,可能会产生什么影响。我怀疑在某个时候 Windows 更新可能会尝试调整此键但无法进行。虽然有些人会称之为好消息(“Windows 可以让他们该死的手远离它”),但他们应该记住,如果以后因此而出现奇怪的情况,那可能更多是他们自己的错,而不是“Windows bug” ”。 (2认同)
  • 我能够创建自己的 CommandPromptHere 键,并保留原始键 (2认同)
  • 对于 @charliearehart 关于将所有者从 TrustedInstaller 更改为长期影响的观点,更好的过程是按照 masi 的建议进行操作,然后再将其更改回来。从管理员组中删除完全权限,然后将所有者更改回“NT SERVICE\TrustedInstaller”(如果您已加入域,请务必将“从此位置”设置为本地 PC)。然后你就把它留在你发现它的时候了。 (2认同)