2015-02-06 90 views
0

所以我用Python编写了一个程序并将其编译为.exe。这工作正常。 我想要的是能够双击我创建的文件(比如用文本),然后用我编译的.exe打开这些文件,然后用这些文件做一些输入。以文件作为输入运行编译后的python .exe

我想这样做可能是至少获取正在与.exe打开,从而为第一个测试是这样的文件的确切位置的一种方法:

.exe文件:

get_location = dirname(realpath(My_Clicked_File)) 
print get_location 

点击的文件将是一些随机扩展,所以.test或我编造的东西。

+0

我还没有尝试过,但我期望如果您将.exe作为特定文件类型的默认打开程序,并双击该类型的文件,那么它的名称和路径将在'sys中提供。 argv'。 – Kevin 2015-02-06 13:16:27

+0

[创建注册表项以将文件扩展名与C++中的应用程序相关联]的可能重复(http://stackoverflow.com/questions/1387769/create-registry-entry-to-associate-file-extension-with-application-in- c) – 2015-02-06 13:20:31

+0

我会看看其他帖子,如果有帮助我会回来。谢谢(我无法找到该文件与我的知识搜索:D) – Wealot 2015-02-06 13:23:21

回答

1

如果您已将您的文件扩展名与您的exe文件相关联,那么当您双击该文件时,其完整文件路径将作为第一个参数传递,您可以在脚本中从sys.argv获取该参数。

+0

这实际上给出了.exe的路径,而不是文件doubleclicked(首先尝试)。 – Wealot 2015-02-06 13:23:57

+2

你检查了第二个参数吗? – Matthias 2015-02-06 13:38:59

+0

关于第二个想法是的,这是答案。它不是来自sys.argv [0]的第一个参数,但它是第二个如此的sys.argv [1]。谢谢! – Wealot 2015-02-06 13:41:36

相关问题