Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 无法打开与应用程序关联的文件_Python_Windows_Wxpython_Cmd - Fatal编程技术网

Python 无法打开与应用程序关联的文件

Python 无法打开与应用程序关联的文件,python,windows,wxpython,cmd,Python,Windows,Wxpython,Cmd,我创建了一个应用程序。我有一些文件需要使用此应用打开。因此,我使用以下命令进行关联: assoc .bengi=BengiFile ftype BengiFile="C:\Program Files (x86)\Bengi\CreateAS.exe" "%1" %* 在这些之后,我可以看到我的文件的图标已经根据我的应用程序的图标发生了变化。但当我双击它时,应用程序没有打开。你能告诉我是怎么回事吗 提前谢谢 编辑: 为了获得文件的路径,我在Python脚本的main函数中添加了以下代码: if

我创建了一个应用程序。我有一些文件需要使用此应用打开。因此,我使用以下命令进行关联:

assoc .bengi=BengiFile

ftype BengiFile="C:\Program Files (x86)\Bengi\CreateAS.exe" "%1" %*
在这些之后,我可以看到我的文件的图标已经根据我的应用程序的图标发生了变化。但当我双击它时,应用程序没有打开。你能告诉我是怎么回事吗

提前谢谢

编辑:

为了获得文件的路径,我在Python脚本的main函数中添加了以下代码:

if (len(sys.argv) > 1):
    print sys.argv[1]
当我尝试从命令提示符手动运行它时,没有问题:应用程序正在运行,并且我可以正确获取文件路径。但是,当我双击.bengi文件时,我得到错误:

有什么建议吗


非常感谢。

您需要在应用程序启动(
main
方法)中添加代码来解析命令行参数并打开文件

我建议你读一下这个话题

这通常看起来像:

static void Main(string[] args)
{
    // parse args, do something with them (like open the file specified)
}

您是否在编写应用程序时考虑了此类参数(即在
main
方法中)?否。我对此一无所知。我需要向我的应用程序添加一些代码吗?你是如何将py脚本制作成exe的?Py2exe?当您按照上面配置的方式运行exe时,print sys.argv[1]打印什么?我使用pyinstaller。打印系统argv[1]根本不打印。我只是得到了错误。