Pyinstaller, кажется, неспособен использовать патронную версию Python от Parent ExePython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Pyinstaller, кажется, неспособен использовать патронную версию Python от Parent Exe

Сообщение Anonymous »

Я пытаюсь создать исполняемый файл из другого исполняемого. /> Я также боролся с прикреплением дополнительных файлов через путь AppData, но я смог сначала обойти это, просто копировав файлы во временный каталог. Я строю его, он работает без проблем, и я в конечном итоге у меня точно так же, как я хочу. У меня есть код после того, как это никогда не называется. Я также обернул часть Pyinstaller в Try/Catch, и это никогда не нажимает.

Код: Выделить всё

save_path = 'C:/Users/' + getpass.getuser()

pyinstaller_opts = [
tmp_folder + '/main.py',
f"--add-data={tmp_folder + '/config.txt'}:.",
f"--add-data={tmp_folder + '/avatar.png'}:.",
'--onefile',
'--noconsole',
f'--icon={tmp_folder + "/deployments-reminder.ico"}',
f'--distpath={save_path}',
'--name',
'deployments-reminder',

]

pyinstaller_opts = [
'C:/Users/me/PycharmProjects/deployments-reminder-git/deployments-reminder.spec'
]

print('pyinstaller ' + ' '.join(pyinstaller_opts))
input("Press Enter to continue...")

try:
print('okay')
PyInstaller.__main__.run(pyinstaller_opts)
print('oooookay?')
except Exception:
print(traceback.format_exc())
print("Unable to generate the EXE.")
input("Press Enter to exit. ")
sys.exit(1)
print('not okay')

print("")
print("Done!")
< /code>
 Это может работать в качестве примера < /h2>
 файл 1 < /h3>
import os
import PyInstaller
import sys
import shutil
import tempfile

tmp_folder = tempfile.gettempdir().replace(chr(92), '/')

def resource_path(relative_path):
try:
base_path = sys._MEIPASS
except Exception:
base_path = os.path.abspath(".")

return os.path.join(base_path, relative_path)

def create_exe():
pyinstaller_opts = [
tmp_folder + '/step_2.py',
'--name',
'hello_world'
]

PyInstaller.__main__.run(pyinstaller_opts)

if __name__ == '__main__':
application = resource_path('step_2.py')
shutil.copy(str(application), tmp_folder + '/step_2.py')
create_exe()

os.remove(tmp_folder + '/step_2.py')

# compile with this
# pyinstaller step_1.py -F --add-data=step_2.py:. -n test
< /code>
 файл 2 < /h3>
print('Hello, world!')
Запуск полученного EXE с первого шага не приводит к составлению EXE второго шага.


Подробнее здесь: https://stackoverflow.com/questions/795 ... parent-exe
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»