【发布时间】:2015-10-26 18:01:43
【问题描述】:
我为我的应用程序制作了一个 GUI。所有脚本都在 Python (2.7) 中,并且 GUI 是用 Tkinter 创建的。我在 Linux 上工作,但我需要这个应用程序可以在 Windows 上执行。所以我使用 py2exe 来创建一个可执行文件。过了一会儿,它几乎可以完美地工作了,但是我遇到了以下问题:
在应用程序的某个地方,我需要调用外部程序,即 ImageMagick 和 LaTeX。我使用命令convert, pdflatex,只需导入os 模块并运行os.system(build),其中build = 'convert page.pdf page.gif'等。当从 *.exe 应用程序调用这些命令时,控制台会弹出(意味着控制台窗口会打开一秒钟然后再次关闭)。 有没有办法防止这种行为?
它不会中断应用程序,但它是丑陋的,不是理想的行为。
[注意]我选择不添加任何样本,因为有很多文件和其他内容,我认为这与问题无关。但是,我可以尝试发布最小(不)工作示例。但也许不需要。
谢谢!
【问题讨论】:
-
尝试使用带有 \c 修饰符的子进程模块
-
也可能有一些软件特定的“静默”命令。例如
build = 'convert page.pdf page.gif可能有一个等效的convert page.pdg page.gif silent选项
标签: python windows tkinter console py2exe