Разполагане на Qt приложения в Windows
Въведение
Добър ден, скъпи читатели! Съвсем наскоро завърших разработката на едно от моите Qt приложения и исках да създам професионален инсталатор, така че всичко да е „като при възрастни“. Както се оказа, това не е лесно да се направи, като се има предвид, че на официалния уебсайт на инструментариума за внедряване почти няма информация за внедряване. Тази статия обсъжда някои от стъпките при подготовката на програми в Qt версия 5.2 или по-нова за разпространение на компютри на други потребители. И така, ето насоките:
- Подготовка на Qt проект за внедряване
- Разпределение на програмата
- Подписване на код и създаване на инсталатор
1. Подготовка на Qt проекта за внедряване
За да улесним следването на инструкциите, нека създадем прост проект за Qt Widgets. Всички последващи операции ще бъдат свързани с този проект. По-долу е съдържанието на изходните файлове на приложението:
Можете да добавите тази информация, като използватефайла с ресурси. Файлът с ресурси има разширение.rcи съдържа текстов код, който описва ресурсите, използвани в приложението. Такива скриптове се използват в проекти на Visual Studio, базирани на WinAPI и съдържат различни манипулатори за икони, низове, идентификатори и др. В проектите на Qt всичко това няма смисъл, но включването на обща информация за програмата все още е необходимо. По-долу са изходният код на файла с ресурси и съдържанието на файла на проекта, което също ще трябва да бъде променено:
В този пример е важно да не забравите да добавите файловетеresources.rcиicon.icoкъм папката източник на проекта. Фигурата по-долу показва прозореца със свойства на програмата след сглобяване:
Понякогапонякога е необходимо програмата да се стартира с администраторски права. В рамките на Qt това може да се направи чрез използване на прости инструкции във файла на проекта. По-долу е кодът, който позволява на програмата да поиска администраторски права при стартиране:
Трябва да се отбележи, че всички инструкции по-горе са гарантирани, че работят само когато използвате комплекта за изграждане на Visual Studio. Подробна информация за ресурсните файлове може да бъде намерена на портала MSDN под „Относно ресурсните файлове“.
2. Оформлението на комплекта за разпространение на програмата
Създаването на комплект за разпространение на приложения, като се вземат предвид всички негови файлове, които трябва да бъдат инсталирани на компютрите на потребителите, е може би най-трудният етап от внедряването. Изисква се внимателно да анализирате изпълнимия файл на програмата за зависимости, да се грижите за файловете за превод и да не забравяте за ресурсите на приложението. Помощната програмаwindeployqt.exe, която идва с комплекта за изграждане, ще помогне за разрешаването на някои от тези проблеми. Този инструмент работи на командния ред и поддържа някои опции за конфигуриране. Фигурата по-долу показва прозореца на командния ред с работеща помощна програма:
Трябва да се отбележи, че преди да използватеwindeployqt.exe, трябва да добавите пътя към този файл към променливата на средата PATH, в противен случай този инструмент няма да работи.
3. Подписване на код и създаване на инсталатор
След като свържете пакета за разпространение на програмата, нека се опитаме да стартираме приложението като администратор. Фигурата по-долу показва съобщение от системната услугаUser Account Control (UAC), предупреждение за стартиране на приложение от неизвестен издател:
Това предупреждение плаши потребителите и създава лошо изживяване за приложението.репутация. За да коригирате ситуацията, трябва да подпишете програмните файлове със специален сертификат. Подписвайки своите програми, разработчиците като че ли дават допълнителни гаранции за надеждността на приложенията по отношение на информационната сигурност. Разработчиците на софтуер с отворен код могат да получат сертификати за своите проекти безплатно, например на уебсайта на Certum. За да използвате сертификата, ви е необходима специална програма, която ще подписва файловете на приложението. За да направите това, можете да използвате удобния инструмент DigiCert Certificate Utility. Фигурата по-долу показва прозореца на тази програма със списък на сертификати за подписване на код:
След като използвате тази помощна програма, трябва да опитате отново да стартирате приложението като администратор. Следното е UAC съобщение, показващо информация за издателя на програмата:
След свършената работа е време да помислите за избора на система за създаване на инсталатор за подготвеното приложение. За тази задача има както платени, така и безплатни продукти. Таблицата по-долу изброява някои инструменти за създаване на инсталатори:
Платено | Безплатно |
InstallShield | Qt Installer Framework |
фабрика за настройка | НОИ |
SetupBuilder | Настройка на Inno |
Smart Install Maker | wix |
Заключение
Можете да помогнете и да прехвърлите малко средства наразработка на уебсайт