我制作了一个程序,它使用 os.startfile()
启动另一个 python 程序。
我想把它作为两个 exe
文件,通过使用 subprocess.call()
启动第二个文件,在 1 个构建文件夹中,但我不知道如何做这个。
我尝试为两者制作一个安装文件,创建 2 个构建文件夹,然后将 1 个 exe
文件复制到另一个的构建文件夹中,但得到了这个:
Traceback (most recent call last):
File "C:\Python34\lib\site-packages\cx_Freeze\initscripts\__startup__.py", line 12,
in <module> __import__(name + "__init__")
ImportError: No module named 'menu_record__init__'
有什么想法吗?
可以使用以下方法在一个构建中包含两个 exe:
import sys
from cx_Freeze import setup, Executable
options = {
'build_exe': {'path': sys.path + ['modules']}
}
executables = [
Executable('script_1.py'),
Executable('script_2.py')]
setup(
name='two exe in one folder',
version='0.1',
description='Two exe in a single build folder',
options=options,
executables=executables)
您可能需要进一步编辑此脚本,但它应该会在同一个构建文件夹中生成两个 exe。
如果您转到您的 python 位置(python.exe 所在的位置)并导航到Lib\site-packages\cx_Freeze\samples\advanced 位置你应该找到一个名为 setup.py 的脚本,看看它,你的答案应该在那里。
Cx_Freeze 中的exe 有依赖关系。通过复制 exe,您只是复制了程序的一部分。
我是一名优秀的程序员,十分优秀!