您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

为python独立可执行文件创建插件

5b51 2022/1/14 8:21:31 python 字数 3300 阅读 510 来源 www.jb51.cc/python

如何为使用pyInstaller,py2exe或类似工具创建的独立可执行文件创建一个好的插件引擎?我没有使用py2exe的经验,但是pyInstaller使用导入钩子从它的压缩存储库导入包.当然,我能够动态导入另一个用pyInstaller创建的压缩存储库并执行代码 - 这可能是一个简单的插件引擎.当插件(这是动态导入的)使用原始存储库中不存在的库(从未导入

概述

如何为使用pyInstaller,py2exe或类似工具创建的独立可执行文件创建一个好的插件引擎?

我没有使用py2exe的经验,但是pyInstaller使用导入钩子从它的压缩存储库导入包.当然,我能够动态导入另一个用pyInstaller创建的压缩存储库并执行代码 – 这可能是一个简单的插件引擎.

插件(这是动态导入的)使用原始存储库中不存在的库(从未导入)时出现问题.这是因为import hook用于原始应用程序并在原始存储库中搜索包 – 而不是稍后导入的包(插件包存储库).

有没有简单的方法解决这个问题?也许存在这样的引擎?

我可以想到允许用户使用其他插件访问任何python库的唯一选择是在exe包中包含所有库.

支持的库限制为子集可能是个好主意,并将其列在文档中.由你决定.

我只用过py2exe.

在py2exe中,您可以指定在setup.py文件中的搜索中找不到的库.

这是一个示例:

from distutils.core import setup
import py2exe

setup (name = "script2compile",console=['script2compile.pyw'],version = "1.4",author = "me",author_email="somemail@me.com",url="myurl.com",windows = [{
                    "script":"script2compile.pyw","icon_resources":[(1,"./ICONS/app.ico")]  # Icon file to use for display
                 }],# put packages/libraries to include in the "packages" list
       options = {"py2exe":{"packages": [   "pickle","csv","Tkconstants","Tkinter","tkFileDialog","pyexpat","xml.dom.minidom","win32pdh","win32pdhutil","win32api","win32con","subprocess",]}} 

       )

import win32pdh
import win32pdhutil
import win32api

总结

以上是编程之家为你收集整理的为python独立可执行文件创建插件全部内容,希望文章能够帮你解决为python独立可执行文件创建插件所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶