这是一个有关注册表的问题。
(背景:今天更新Python3.8,更新完文件右键没有Edit with IDLE了。上百度找了找说用注册表。在使用注册表的时候产生了一些疑问。又去百度谷歌。但是都只是讲这个注册表如何操作的。)
注册表里路径
计算机\HKEY_CLASSES_ROOT\SystemFileAssociations\.py\shell\Edit with IDLE\command
其中我猜测的,SystemFileAssociations(系统文件(夹)关联)应该是右键菜单,.py应该是说.py为后缀的文件,Edit with IDLE是选项名称,command是指令,通过command中路径显示的文件(exe)打开当前选定文件(比如
“D:\UsefulSoftware\Python\pythonw.exe” “D:\UsefulSoftware\Python\Lib\idlelib\idle.pyw” “%1″)
那么问题来了,这个shell代表什么意思?
我尝试在路径中省掉这个文件夹,把注册表路径变成\HKEY_CLASSES_ROOT\SystemFileAssociations\.py\Edit with IDLE\command
然后文件右键里的Edit with IDLE就没了。
回答
这个shell是指操作系统的外壳,对于windows来说(经典的windows。windows 10其实也支持别的shell,比如 powershell、wsl+bash),就是 explorer,俗称我的电脑/桌面/资源管理器。
windows文件关联在注册表的格式这是约定好的,shell不能省略。