Evgenii Legotckoi
Evgenii LegotckoiAug. 16, 2015, 11:32 a.m.

Qt WinAPI - Lesson 002. How to make win installer for Qt apllication?

In the previous article we learned how to quickly collect all used in the project DLL-libraries. And now it is time to talk about how to build an installer for OS Windows. For a long time I use quite comfortable opensource tool called InnoSetup, which allows just a few clicks to collect a multilingual installer.

The installer utility is going from a script, you can write to blows, or use a script to create the script. The second embodiment is sufficiently effective and easier.

Build installer

Step one. Running the build script

To run the script, go to the menu and choose to create a new one: File > New or combination of keys Ctrl + N.

Then click on the button Next.


Step Two. Defining the program data

In this step, setting up your program's data:

  1. Application Name;
  2. The version of the application;
  3. Publisher application;
  4. Website application.

After that, follow the next (Next button).

Step Three. Setting a folder to install the application

In this step, select the folder where you install the application, if required, and can specify whether to allow the user to change the destination folder or not.

Step Four. Selecting the folders and files that will be included in the package

In this step, you must select the executable file (* .exe), folders, and your application libraries.

Step Five. Setting advanced options of the installer

In this step, we set up the icons that will be created when you install the application, and user rights to configure these icons during installation.

Step Six. Defining the license agreement

Unless of course you have time to write ...

Step Seven. Set up the language of the installer

Step Eight. Setting the output folder and the name of the installer

In this step, we configure the path to the folder where the installer will be built and the name and icon of the installer. The following steps click Next and finally Finish .

Step Nine. Build installer

After the end of the script for the preparation of the script utility will offer to build the installer.

From build installer initially refused recommend if you have a folder with their attachments. As still need to manually register the file path of an assembly that are in those folders.

To do this, locate the unit [Files], and in it the line where the selected folder contents.

In this case, the line:

Source: "D:\gui_stm32\imageformats\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs

It is necessary to correct the setting DestDir, as shown below, otherwise the installer will dump all the files in the pile.

Source: "D:\gui_stm32\imageformats\*"; DestDir: "{app}\imageformats"; Flags: ignoreversion recursesubdirs createallsubdirs

Coclusion

Summing up, I can say that the utility copes with its functionality in the "Excellent"

And to download from the official website at the following link: InnoSetup

Just do not forget to collect all the DLL project in the same folder as was done in the previous article.

Video

We recommend hosting TIMEWEB
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.

Do you like it? Share on social networks!

VS
  • Nov. 5, 2020, 4:38 a.m.
  • (edited)

Можно ли как-то однозначно (не проверяя) выяснить, запустится ли программа в windows 7?
И как быть с разрядностью уже и просто в w10 (32\64)?

ИВ
  • Jan. 1, 2021, 1:01 p.m.

Здраствуйте. А как упаковать проект в deb пакет, для распространения на линуксе?

Comments

Only authorized users can post comments.
Please, Log in or Sign up
AD

C ++ - Test 004. Pointers, Arrays and Loops

  • Result:50points,
  • Rating points-4
m

C ++ - Test 004. Pointers, Arrays and Loops

  • Result:80points,
  • Rating points4
m

C ++ - Test 004. Pointers, Arrays and Loops

  • Result:20points,
  • Rating points-10
Last comments
ИМ
Игорь МаксимовNov. 22, 2024, 8:51 a.m.
Django - Tutorial 017. Customize the login page to Django Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…
Evgenii Legotckoi
Evgenii LegotckoiOct. 31, 2024, 11:37 a.m.
Django - Lesson 064. How to write a Python Markdown extension Добрый день. Да, можно. Либо через такие же плагины, либо с постобработкой через python библиотеку Beautiful Soup
A
ALO1ZEOct. 19, 2024, 5:19 a.m.
Fb3 file reader on Qt Creator Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html
ИМ
Игорь МаксимовOct. 5, 2024, 4:51 a.m.
Django - Lesson 064. How to write a Python Markdown extension Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
d
dblas5July 5, 2024, 8:02 a.m.
QML - Lesson 016. SQLite database and the working with it in QML Qt Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
Now discuss on the forum
Evgenii Legotckoi
Evgenii LegotckoiJune 24, 2024, 12:11 p.m.
добавить qlineseries в функции Я тут. Работы оень много. Отправил его в бан.
t
tonypeachey1Nov. 15, 2024, 3:04 a.m.
google domain [url=https://google.com/]domain[/url] domain [http://www.example.com link title]
NSProject
NSProjectJune 4, 2022, 12:49 a.m.
Всё ещё разбираюсь с кешем. В следствии прочтения данной статьи. Я принял для себя решение сделать кеширование свойств менеджера модели LikeDislike. И так как установка evileg_core для меня не была возможна, ибо он писался…
9
9AnonimOct. 25, 2024, 6:10 a.m.
Машина тьюринга // Начальное состояние 0 0, ,<,1 // Переход в состояние 1 при пустом символе 0,0,>,0 // Остаемся в состоянии 0, двигаясь вправо при встрече 0 0,1,>…

Follow us in social networks