【问题标题】:python exe errors when running by an external program由外部程序运行时出现python exe错误
【发布时间】:2017-07-21 07:19:27
【问题描述】:

我有使用 cx_Freeze 制作的 python exe 文件。基本上该脚本使用文本文件“XYZ.txt”来生成词云。当我运行 python exe 文件时,一切都很好,代码运行良好,但我打算从外部程序(生成文本文件的游戏)运行它,当我试图从该游戏运行它时,python exe 运行但给了我 FileNotFoundError:[错误 2] 没有这样的文件或目录:'XYZ.txt'。但“XYZ.txt”实际上是在同一个文件夹中,同时。此外,我尝试运行该游戏中的文本文件,它打开了,但 python exe 找不到它。

我也尝试以管理员身份运行我的游戏,然后运行 ​​python exe,然后我得到:“dll load failed the specified module could not be found”而不是之前的错误。

如果有人可以帮助我,我将不胜感激。

【问题讨论】:

  • 您能否发布您的代码,突出显示问题所在?
  • 这里出现错误:with open('XYZ.txt','r',encoding="utf8") as infile: words = " ".join(infile) 但是我需要再提一下当我直接运行python exe文件时代码运行良好,但是当我在外部应用程序中调用它时它显示它找不到“XYZ.txt”

标签: python exe cx-freeze file-not-found


【解决方案1】:

请在您的 python 代码中给出“XYZ.txt”的绝对路径。我想这可能会解决问题。

【讨论】:

  • 当我给出绝对路径但我想与其他人共享这个文件时它可以工作,在这种情况下,exe文件中的路径对于其他计算机来说不是绝对的。对于这种情况,你有什么解决办法吗?
  • @Omid 也许你可以找到相对于你安装游戏的目录的绝对路径?
  • @KindStranger 我该怎么做?
  • @KindStranger,将 XYZ.txt 文件的可配置路径保存在单独的配置文件 (XYZ.cfg) 中。您需要阅读配置文件以获取 Python 代码中 XYZ.txt 的路径。与他人共享文件时,要求他们更新路径 (XYZ.cfg)
猜你喜欢
  • 1970-01-01
  • 2022-06-15
  • 1970-01-01
  • 1970-01-01
  • 2013-03-07
  • 1970-01-01
  • 1970-01-01
  • 2014-09-09
  • 1970-01-01
相关资源
最近更新 更多