Как указать путь установки MSI по умолчанию в cx_freeze и distutils? - PullRequest
6 голосов
/ 03 апреля 2012

Я пытаюсь создать установщик из приложения Python, которое мы написали.Я написал простой файл setup.py, и он без проблем создает MSI-файл, но я не могу найти способ указать путь установки по умолчанию.Мы не хотим, чтобы он устанавливался в каталог по умолчанию «C: \ Program Files».Помощь

Ответы [ 2 ]

3 голосов
/ 03 апреля 2012

Distutils довольно ограничен в функциональности, когда дело доходит до создания установщиков. Я бы предложил вам использовать NSIS . Это довольно просто и позволяет настраивать намного больше, чем distutils.

Другим способом было бы вручную добавить --initial-target-dir в список аргументов в setup.py (до вызова функции setup):

if 'bdist_msi' in sys.argv:
    sys.argv += ['--initial-target-dir', 'c:\default\path']
2 голосов
/ 08 января 2019

Похоже, что в текущей версии добавление следующего в ваш скрипт установки обеспечивает те же функции:

setup(
    ...
    options={'bdist_msi': {'initial_target_dir': 'C:\\alternate\\start\\path'}}
    ...
)

Обратите внимание, что для этого требуется обратная косая черта, а не прямая косая черта.

...