【问题标题】:How CMD.exe recognize an extension need program?CMD.exe如何识别扩展需要程序?
【发布时间】:2014-09-05 16:03:50
【问题描述】:

当我将.py 文件的路径提供给 cmd.exe 时,它会使用 Python 自动运行该文件。(我将 python 的路径添加到 PATH 环境变量已经)。

我想知道:

1- cmd.exe 如何识别我的.py 文件必须使用python 运行?

2- 如果我想从我的文件名末尾删除 .py,并将其替换为 .wxyz(例如),我如何使 cmd.exe 与该文件(例如 .py 文件)一起运行? (换句话说,我的意思是我想将 .wxyz 扩展名添加到使用 python 运行的文件列表中)

【问题讨论】:

标签: python windows cmd registry


【解决方案1】:

Windows 会保留一份文件扩展名列表以及应该运行它们的程序。您可以查看当前列表并添加您自己的列表,方法是转到控制面板,搜索“默认程序”并选择“使文件类型始终在特定程序中打开”之类的条目(它因 Windows 版本和当然是语言)。

或者,您可以使用 assoc 和 ftype 命令在命令行上执行此操作。我目前没有 Windows 机器,但输入这些,看看你会得到什么。

assoc .py
ftype File.Python

这将为您提供如何更改它们的帮助

assoc /?
ftype /?

【讨论】:

  • 谢谢亲爱的朋友。两个答案都很完美。我检查了第一个答案:)
【解决方案2】:

1)有一个很好的解释here

当 Shell 需要查询某个文件类型的文件关联时,它会创建一个包含该文件类型关联的注册表键数组,并检查这些键以查找要使用的适当文件关联。

简而言之,当您安装 Python 时,它为 Windows 提供了足够的上下文,知道它应该在看到 .py 时调用 Python

2) 简明解释见here,更多上下文here

在 Windows 中,这可以通过编辑注册表来完成,允许 Windows 识别自定义扩展。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多