![向 .exe 文件添加上下文菜单](https://linux22.com/image/1470990/%E5%90%91%20.exe%20%E6%96%87%E4%BB%B6%E6%B7%BB%E5%8A%A0%E4%B8%8A%E4%B8%8B%E6%96%87%E8%8F%9C%E5%8D%95.png)
我过去曾添加过一些自定义上下文菜单,非常成功。但是,我试图添加一个选项来从上下文菜单中禁用 dpi 缩放,因为许多应用程序要求我转到设置并手动执行此操作。但是,下面HKCR\.exe
没有 shell 选项。所以我创建了一个并添加了一个键,带有命令和扩展(通过 Shift 单击使其可用)。
以下是 reg query 的输出HKCR\.exe\shell\DPI Compatibility\command
:
HKEY_CLASSES_ROOT\.exe\shell\DPI Compatibility\command
(Default) REG_SZ reg.exe Add "HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v %1 /d "~ HIGHDPIAWARE"
该命令可以自行运行,并成功添加 DPI 设置。但是,即使按住 Shift 键并单击,也没有选项。我试过重新启动。
我认为问题可能出在 .exe 键下的 PersistentHandler 键上。我怀疑它优先于旧的Shell/ShellEx system
。HKCR\.exe\PersistentHandler
包含数据{098f2470-bae0-11cd-b579-08002b30bfeb}
,这是一个包含数据的键Null Persistent handler
和 key PersistentAddinsRegistered
,它包含指向键的更多数据。
如果有任何区别的话,我正在运行 Windows 10。
答案1
好吧,我明白了。这种事总是会发生。
HKCR.exe 的默认值是“EXEFile”,它是一个包含 shell 和 shellex 的类。通过将我的命令放入其中,一切都运行顺利。