加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

对于使用PyInstaller创建的可执行文件,从Dock中隐藏终端

发布时间:2020-12-20 13:47:43 所属栏目:Python 来源:网络整理
导读:我正在使用PyInstaller(v2.1)为不同的平台捆绑 Python应用程序.我正在为我的GUI使用外部工具,它调用PyInstaller捆绑的可执行文件,它将充当后端服务器. 我遇到了捆绑Mac(OS X 10.10)的问题.当我的PyInstaller捆绑的Unix可执行文件(它是作为后台进程运行)从GUI
我正在使用PyInstaller(v2.1)为不同的平台捆绑 Python应用程序.我正在为我的GUI使用外部工具,它调用PyInstaller捆绑的可执行文件,它将充当后端服务器.

我遇到了捆绑Mac(OS X 10.10)的问题.当我的PyInstaller捆绑的Unix可执行文件(它是作为后台进程运行)从GUI工具调用时,它成功启动没有窗口,但不幸的是,它与终端中的终端图标一起启动.

在构建可执行文件时,我提供了–no-console选项,debug = False,但没有效果.这似乎在Windows上完美运行.

我应该看一些PyInstaller选项来防止可执行图标弹出Dock吗?或者我应该查看一些OS X选项吗?

总结一下:我希望防止后台进程在从外部应用程序调用时出现在Dock上(在OS X上).

另一个问题也可能是:创建纯后台应用程序的Pyinstaller指令是什么?

注意:我也尝试将我的python应用程序捆绑为.app,并试图干扰* .plist文件,但这也没有帮助(除了它看起来不对,因为它的意思是仅作为后台进程运行)

以下是plist文件的外观:

...
<plist version="1.0">
<dict>
    ...
    <key>CFBundlePackageType</key>
    <string>APPL</string>
    <key>LSBackgroundOnly</key>
    <string>1</string>
    <key>LSUIElement</key>
    <true/>
</dict>
</plist>

解决方法

*I’ve also tried bundling my python app as a .app,and tried meddling around with the .plist file

如果你说明你在这里做了什么,会有所帮助.通常,当设置为true时,键LSUIElement应该按照您的意愿执行.作为docs州: –

Specifies whether the app is an agent app,that is,an app that should not appear in the Dock or Force Quit window. See LSUIElement for details.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读