Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.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 除非文件夹中包含文件,否则Windows-Pyinstaller出现错误“;无法执行脚本";_Python_Windows_Python 3.x_Executable_Pyinstaller - Fatal编程技术网

Python 除非文件夹中包含文件,否则Windows-Pyinstaller出现错误“;无法执行脚本";

Python 除非文件夹中包含文件,否则Windows-Pyinstaller出现错误“;无法执行脚本";,python,windows,python-3.x,executable,pyinstaller,Python,Windows,Python 3.x,Executable,Pyinstaller,我有一个问题要克服以下错误,当我运行我的程序打包使用pyinstallet到独立的可执行文件 在程序中,我使用一个图标文件来设置iconbitmap。该文件与python脚本位于同一文件夹中 master = Tk() master.wm_title("P&P Util ") master.iconbitmap('logo.ico') 此外,我在打包过程中将和图标添加到可执行文件中 pyinstaller -F -w -i "C:\temp\Util\logo.ico" main.p

我有一个问题要克服以下错误,当我运行我的程序打包使用pyinstallet到独立的可执行文件

在程序中,我使用一个图标文件来设置iconbitmap。该文件与python脚本位于同一文件夹中

master = Tk()
master.wm_title("P&P Util ")
master.iconbitmap('logo.ico')
此外,我在打包过程中将和图标添加到可执行文件中

pyinstaller -F -w -i "C:\temp\Util\logo.ico" main.py
现在,经过一些测试,我发现当我将文件本身添加到打包的可执行文件时,程序运行没有任何问题。我知道我需要改变我使用文件的方式,但我不知道如何改变。
非常感谢您的建议。

由于您没有将“logo.ico”文件添加到包中,因此,当
master.iconbitmap('logo.ico')
查找图标时,它不在那里,因此它看起来像是崩溃了。使用命令
-i'C:\temp\Util\logo.ico'
可以告诉pyinstaller将该图标文件设置为windows图标,但这与将其包含在包中不同。要执行此操作,请尝试在pyinstaller命令中包含此命令:

--add-data "C:\temp\Util\logo.ico;."

分号后的“.”告诉pyinstaller将文件放在何处。在本例中,它将把它放在与.exe文件相同的文件夹中。

不起作用,因为pyinstaller帮助说使用--add data的方法是[--add data]我运行了以下命令:pyinstaller-F-w--add data“logo.ico;logo.ico”main.py不幸的是,仍然得到了相同的结果error@Ilazar1x对不起,我遗漏了命令的第二部分。我已经更新了我的答案。谢谢你,也许你可以在一件事上给我建议。在我使用了您的建议之后,pyinstaller将logo文件添加到可执行文件中。我如何知道,当我在没有参数“-F”的情况下运行安装程序时,我会在创建的文件夹中看到徽标文件。不幸的是,当我使用参数“-F”运行安装程序时,创建的文件激活失败,并出现相同的错误“无法执行脚本”。你能告诉我怎么做吗?