首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在使用pyinstaller准备.dll文件时添加丢失的.exe文件

如何在使用pyinstaller准备.dll文件时添加丢失的.exe文件
EN

Stack Overflow用户
提问于 2022-10-02 11:17:57
回答 3查看 200关注 0票数 0

我刚刚编写了简单的脚本,导入了一些模块并打印了一些内容:

代码语言:javascript
复制
from clicknium import clicknium as cc
print(cc.edge.browsers)

因此,我创建了venv,已安装的clicknium (pip3 install clicknium==0.1.9)。

在此之后,我准备了规范文件:

代码语言:javascript
复制
pyi-makespec spec_file_name script_name.py

在使用创建的.spec文件运行命令之后:

代码语言:javascript
复制
pyinstaller spec_file_name.spec

pyinstaller正在创建.exe文件。在运行.exe之后,我得到了一个错误:

代码语言:javascript
复制
System.IO.FileNotFoundException: Unable to find assembly 'C:\Users\user_1\AppData\Local\Temp\_MEI197042\clicknium\.lib\automation\ClickniumJavaBridge-32.dll'

当然,我理解这个错误,但我不知道如何修复它。

当我在缺少文件时遇到一些问题时,我在生成规范文件时使用了--add-data添加了它。但是它不适合我处理.dll文件。

clicknium==0.1.9 pyinstaller==5.4.1

更新

现在,我正在使用velow命令创建.spec文件:

代码语言:javascript
复制
pyi-makespec --onefile --add-data="C:\Users\...\project_name\venv\Lib\site-packages\clicknium\.lib\automation\*;clicknium\.lib\automation" --name app app.py

上面的错误是固定的,但是有一些新的东西。下面的代码会导致错误:

代码语言:javascript
复制
clr.AddReference(Apath)

System.BadImageFormatException: Could not load file or assembly 'file:///C:\Users\user_1\AppData\Local\Temp\_MEIxxxxxx\clicknium\.lib\automation\ClickniumJavaBridge-32.dll' or one of its dependencies. The module was expected to contain an assembly manifest.

因此,据我所知,.dll文件仍然不可见,而且clicknium仍在寻找临时文件中的dll文件。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2022-10-04 11:55:00

clicknium提供的包项目/文件夹功能,可以生成exe。您可以参考以下内容:https://www.clicknium.com/documents/tutorial/vscode/project_management

首先,在vscode中运行命令"Clicknium: Create“,您可以选择当前文件夹;然后,运行命令"Clicknium: Package”,它将生成exe文件

票数 2
EN

Stack Overflow用户

发布于 2022-10-04 08:50:32

有时,您必须将*.dll文件添加到*.spec文件中的构建过程中。

看这里,有很多关于它的讨论:Bundling data files with PyInstaller (--onefile)

票数 1
EN

Stack Overflow用户

发布于 2022-10-02 13:23:58

如果它不适用于您,请尝试使用其他选项,如一个文件:

代码语言:javascript
复制
pyi-makespec -F script_name.py spec_file_name

此外,顺序首先需要是脚本。

代码语言:javascript
复制
pyi-makespec script_name.py -n spec_file_name
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73925367

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档