Как я включаю другие файлы .py с cx_freeze, если я использую абсолютные маршруты?

Я считаю малышку GUI построенной с tkinter который я хочу составить с cx_freeze в выполнимый .exe.

Я нашел он делает время, которое, чтобы производить GUI, в составителя было бы должно включать DLLs (он для Windows) tkinter. Сейчас, эти DLLs находятся в маршруте, полностью отличном от моей среды работы для этой GUI (видеть setup.py линии внизу), а следовательно я должен использовать абсолютный маршрут. Того же способа, я включаю два файла, которые находятся в той же папке (икона и txt).

Проблема рождается из, что, если я хочу добавить файл посредством Вашего маршрута (будьте относительной или абсолютной), да добавляются, но появляются в папке корень вытекающего freeze! И то, что я хочу, состоит в том, что верят в папку для каждого файла. Вкратце:

Маршрут файла в workspace: ".\spool\Generador.py"

Маршрут файла в составленном: ".\Generador.py"'

Маршрут файла, желаемый в составленном: ".\spool\Generador.py"

Здесь я setup.py:

os.environ['TCL_LIBRARY'] = r'C:\Users\S81335\AppData\Local\Programs\Python\Python36\tcl\tcl8.6'
os.environ['TK_LIBRARY'] = r'C:\Users\S81335\AppData\Local\Programs\Python\Python36\tcl\tk8.6'
packages = ["tkinter", "cx_Oracle"]
include_files = [r"C:\Users\S81335\AppData\Local\Programs\Python\Python36\DLLs\tcl86t.dll",
                 r"C:\Users\S81335\AppData\Local\Programs\Python\Python36\DLLs\tk86t.dll",
                 r"D:\Desarrollo\python\Accesos\key.ico",
                 r"D:\Desarrollo\python\Accesos\tablas.txt",
                 r"spool/plantillalimpieza.txt",
                 r"spool/plantillactl.txt",
                 r"spool/plantillasql.txt",
                 r"spool/Generador.py",]

setup(
    name="Generador de accesos",
    description='Generador de accesos',
    version=__version__,
    options={"build_exe": {
        'packages': packages,
        'include_files': include_files,
        # 'excludes': excludes,
        'include_msvcr': True,
    }},
    executables=[Executable("Manual.py", base="Win32GUI", icon="key.ico")]
)

Я не очень уверен как задавать немного более ясный вопрос, так как читая ее, может быть, он трудный для того, чтобы понять :S

0
задан 11.07.2019, 22:10
1 ответ

EncontrГ© форма. Так или иначе кажется, что нужно включать всю папку для того, чтобы он был создан в папке build.

include_files = [r"C:\Users\S81335\AppData\Local\Programs\Python\Python36\DLLs\tcl86t.dll",
                 r"C:\Users\S81335\AppData\Local\Programs\Python\Python36\DLLs\tk86t.dll",
                 r"D:\Desarrollo\python\Accesos\key.ico",
                 r"D:\Desarrollo\python\Accesos\tablas.txt",
                 r"spool/"]

я использовал workaround в том же самом setup.py, которые создают папку и двигают файлы однажды заканчивает скроллировать ее instalaciГіn, но encontrГ© ответ в SO в inglГ©s .

0
ответ дан 01.12.2019, 23:43