AI软件下载
有趣网站推荐及实用软件下载

File "C:\Users\ADMINI~1\AppData\Local\Temp\ONEFIL~1\subprocess.py", line, in _execute_child

我一个python应用,在本电脑上调试一切正常,然后打包成了exe,在本电脑上运行exe程序也是一切正常。然后复制到别的电脑上之后运行就发生错误,部分提示信息如下:

Exception in Tkinter callback
Traceback (most recent call last):
File “C:\Users\ADMINI~1\AppData\Local\Temp\ONEFIL~1\tkinter__init__.py”, line 1921, in call
File “C:\Users\ADMINI~1\AppData\Local\Temp\ONEFIL~1\start.py”, line 137, in on_generate_clicked
File “C:\Users\ADMINI~1\AppData\Local\Temp\ONEFIL~1\subprocess.py”, line 503, in run
File “C:\Users\ADMINI~1\AppData\Local\Temp\ONEFIL~1\subprocess.py”, line 971, in init
File “C:\Users\ADMINI~1\AppData\Local\Temp\ONEFIL~1\subprocess.py”, line 1456, in _execute_child
FileNotFoundError: [WinError 2] 系统找不到指定的文件。

报错问题就是找不到文件,后来发现是执行cmd命令的python.exe程序找不到了。代码里通过调用python.exe 来执行模块的cmd命令,但是打包成单exe文件之后没有复制原来的python解释器目录,就报找不到文件的错误,所以还得把原来安装python的目录一并复制打包才行。

但是打包exe程序就是为了精简,要是再把python目录一并打包发送的话,那就多此一举了。所以这里我们不通过调用python.exe执行cmd命令执行相关功能的方法,我们直接导入功能模块,通过调用模块main函数执行cmd命令,如:

sys.argv = command
main()

command为你想要执行的cmd命令内容,main()为你想要调用的模块的main()函数。这样的话再打包应用执行功能的时候就不再需要调用python.exe了,就省了复制多余的文件了。

1V1答疑支持
爱发电:点击前往
赞(0) 打赏
文章名称:《File "C:\Users\ADMINI~1\AppData\Local\Temp\ONEFIL~1\subprocess.py", line, in _execute_child》
文章链接:https://nuowa.net/1506
本站原创文章未经允许不得转载,分享资源仅供个人学习研究,不可用于违法违规用途,否则法律问题自行承担。

最新发布

觉得文章对你有帮助就打赏一下作者

非常感谢你的打赏,我将有更多的动力继续提供优质内容,让我们一起创建更加美好的世界!

支付宝扫一扫

微信扫一扫