我创建了一个python应用程序,并使用PyInstaller将其转换为。exe。我的问题是:我在玩。exe文件练习,我改变了清单名称和应用程序不工作(确实),但有线的事情是:当我重新命名该清单文件到原来的名字。应用程序仍然无法工作,并出现相同的错误:"未找到380序数"。我也试过卸载(but)如果我用不同的名称或路径安装它,应用程序将正常工作)。
我认为这是与临时文件有关的一些设置存储在某个地方,为了让我的应用程序工作,我需要清除这些文件(我猜)。
所以谁能给我解释一下问题的原因,为什么会发生,以及如何解决它?
Python 3.7,Pyinstaller 4.5,赢得10
我找到了解决方案:问题的发生是因为清单在启动后被纹进了可执行文件名。
因此修改exe文件的修改日期将完成这项工作,应用程序将再次正常工作。
下面是一个python脚本,可以解决这类问题:
import os
import time
import datetime
path = './/run_application//run_application.exe'
modified_ts = time.mktime(datetime.datetime.now().timetuple())
os.utime(path, (modified_ts, modified_ts))
print("Executable modification time has been updated.")
在这里你可以看到更多的解释主题https://github.com/pyinstaller/pyinstaller/issues/6223