Можно ли создать setup.exe в QT для установки приложения на клиентском компьютере

Что делает коды потенциально небезопасными, так это ссылки на имена и / или атрибуты. Вы можете создать подкласс ast.NodeVisitor, чтобы убедиться, что в данном фрагменте кода нет таких ссылок перед вами eval:

import ast
from textwrap import dedent

class Validate(ast.NodeVisitor):
    def visit_Name(self, node):
        raise ValueError("Reference to name '%s' found in expression" % node.id)
    def visit_Attribute(self, node):
        raise ValueError("Reference to attribute '%s' found in expression" % node.attr)

Validate().visit(ast.parse(dedent(raw), '<inline>', 'eval'))
eval(raw)
14
задан Daniel Hedberg 18 January 2017 в 11:55
поделиться

5 ответов

Вам определенно нужен сторонний установщик. Несколько хороших были уже упомянуты. Если Вы решаете пойти с заплаченным установщиком bitrock's решения , отличный выбор, и они - также центральный QT, и их основной бизнес вокруг QT

Как альтернатива с открытым исходным кодом, которую я предложил бы NSIS

10
ответ дан 1 December 2019 в 06:54
поделиться

Я использую Inno и как он много. Я попробовал немногих других, и этот работал хорошо на меня. (и свободный)

14
ответ дан 1 December 2019 в 06:54
поделиться

Если Вы только нацелены на Windows, можно использовать WiX (Windows Installer XML), который может быть интегрирован в Visual Studio и MSBuild, настолько относительно простой в использовании. Это свободно и производит допустимые файлы MSI, которые могут быть требованием так или иначе.

, Если Вам скорее нужна простая установка мастера, дайте InnoSetup попытку.

3
ответ дан 1 December 2019 в 06:54
поделиться

Я передумываю для использования внешнего программного обеспечения как installshield. Они оптимизированы для упаковочной цели и предоставляют очень настраиваемые возможности.

1
ответ дан 1 December 2019 в 06:54
поделиться

Если у Вас уже есть Visual Studio, можно продолжить использовать проект установки распределить приложение. Инструменты встроены. Это - технология, которую WiX "заменил" (больше на том позже), и это - то, что я делаю. Это не идеальное решение, но это получает меня MSI, который является, как программное обеспечение Windows должно быть установлено в эти дни. Используя InstallShield или что-то могло бы быть лучше, но быть честным у меня никогда не было хорошего опыта ни с какими сторонними установщиками. Поэтому я просто придерживался проекта установки далекого от идеального; это бьет расходы много на дорогие, ужасные и часто расстраивающие сторонние инструменты создания установщика. Короче говоря, это - очень прагматическое решение, и прагматические решения имеют смысл.

Что касается WiX: Я действительно не рекомендую это вообще. Это походит на прекрасную идею, но после нескольких месяцев я переключался назад на проекты установки. Даже при том, что он использовал WiX в течение года больше, чем я использовал проекты установки, наш эксперт WiX берет вдвое более долго, чтобы сделать что-либо. (Он - потрясающий программист, также просто немного ослепленный открытым исходным кодом.) Вы заканчиваете с тысячами строк скопированного текста, которые необходимо поддержать. С парой различных проектов это становится неудобной в сопровождении путаницей.

я не предложил бы пытаться создать установщик в QT самостоятельно. В дополнение к необходимости получить большое поведение просто право, как спокойное приложение это потребует библиотек Qt. Если Вы статически не связываете их, который является возможным с коммерческим выпуском (не LGPL), но трудным и не рекомендуемый. Плюс тогда Вы включали бы две копии библиотек Qt в Вашей загрузке.

сама кварта, кажется, использует nullsoft установщик. Тот один должен сказать, что Вы создающий Ваше собственное не являетесь хорошей идеей.:)

1
ответ дан 1 December 2019 в 06:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: