在winXP上的python版本
我在超级用户上问了这个问题,并得到了它的风滚草徽章(10天内13次),所以我想这里可能是正确的地方。在winXP上的python版本
在我的Windows机器上安装了几个python版本。我希望能够在默认使用的版本之间轻松切换。
我尝试并使用winexplorer更改与py文件关联的程序。 我设置程序用于打开这些文件作为写字板。 现在,当我在命令行中键入.py的文件名时,该文件将在写字板中打开。
尽管如此,键入命令行下面的产量:
C:\>assoc .py
.py=Python.File
C:\>ftype Python.File
Python.File="C:\Program\Python27\python.exe" "%1" %*
我不明白为什么在命令行中运行写字板(如在Windows资源管理器中设置),虽然ASSOC FTYPE和说应该运行Python27。
这些关联(命令行与资源管理器)存储在不同的地方吗?哪一个覆盖哪一个,并设置与assoc和ftype的新关联覆盖在资源管理器中设置?
你会推荐做什么,以便能够轻松切换?从我的注册表
更多信息:
HKEY_CLASSES_ROOT.py是Python.File
HKEY_CURRENT_USER \软件\微软\的Windows \ CurrentVersion \ Explorer中\ FileExts.py \应用是wordpad.exe
HKEY_CURRENT_USER \软件\微软\的Windows \ CurrentVersion \ Explorer中\ FileExts.py \ OpenWithProgids \ Python.File是长度的二进制值0
HKEY_LOCAL_MACHINE \ SOFTWARE \ Classes.py(Standard)是Python.File
多个注册表:
HKEY_CLASSES_ROOT \应用程序\ python.exe \壳\开放\命令(标准),仍然是“C:\程序\ Python27 \ python.exe“”%1“%*,
我想这是ftype Python.File中显示的内容。但它似乎并没有被使用。
编辑补充登记信息
注册表编辑器说:
HKEY_CLASSES_ROOT\.py
+--- (Standard) REG_SZ Python.File
+--- Content Type REG_SZ text/plain
我试图改变的Content Type
,没有效果的价值。
也:
HKEY_CLASSES_ROOT\Python.File
+--- shell (no data)
+--- Edit with IDLE
| +--- command
| +--- (Standard) <path-to-idle>
+--- open (no data)
+--- command
+--- (Standard) <path-to-python27>
我试过的shell
值设置为open
,并open
的路径值到python27 exe文件,仍然没有工作。 不知何故,命令提示符仍然可以找到我在winexplorer中所做的关联,并使用wordpad打开文件,而不是使用open
中的命令。
如果HKEY_CLASSES_ROOT\.py
是Python.File
那么你必须考虑HKEY_CLASSES_ROOT\Python.File\shell
。然后查找与其值相似的子键,例如如果shell
密钥的值为open
,请转至HKEY_CLASSES_ROOT\Python.File\shell\open
。这就是关联存储的地方。如果shell
密钥没有值,请转至open
子项。
问题是ftype工具始终显示open
子项的内容,无论shell
键的值如何。
有趣。但是什么使'cmd'使用写字板,而不是'HKEY_CLASSES_ROOT \ Python.File \ shell \ open \ command'中的值? 'shell'没有任何值,只有两个子键'Edit with IDLE'和'open',每个子键都有'command'。这两个子键'命令'都有一个与python相关的值,而没有与wordpad相关的值。 – Gauthier 2010-11-08 12:20:32
所以'cmd'使用'shell'的值来执行脚本,而'ftype'使用'open'的值?我的键'shell'没有任何价值,那么cmd使用什么来运行脚本(它变成了wordpad,但是在那里使用了什么键?)。 – Gauthier 2010-11-08 12:21:45