C++ API

The C++ API documentation is written for developers who develop the Qt Installer Framework. It describes the internal API, so there is no compatibility promise. Further, the documentation is a work in progress and therefore parts of it are missing while other parts might be out of date.

To create customized installers, use the Scripting API, instead. For more information, see Customizing Installers.

Namespaces

NamespaceDescription
QInstallerContains classes to implement the core functionality of the Qt Installer Framework and the installer UI.
KDUpdaterContains classes to automatically detect updates to applications, to retrieve them from external repositories, and to install them. KDUpdater classes are a fork of KDAB's general KDUpdater module.
Lib7zContains classes to create and extract archives.

QInstaller C++ Classes

QInstaller::AbstractArchive

The base class for classes representing different archive files. It cannot be instantiated on its own but defines the API and provides common functionality when subclassed

QInstaller::AbstractFileTask

The base class of file related tasks

QInstaller::ArchiveEntry

Struct represents an entry in an archive file, which can be for example a file or a directory

QInstaller::ArchiveFactory

Used to create archive objects based on the suffix of a given filename

QInstaller::AspectRatioLabel

Label for displaying a pixmap that maintains its original aspect ratio when resized

QInstaller::BinaryContent

Handles binary information embedded into executables

QInstaller::BinaryFormatEngine

The default file engine for accessing resource collections and resource files

QInstaller::BinaryFormatEngineHandler

Way to register resource collections and resource files

QInstaller::BinaryLayout

Describes the binary content appended to a file

QInstaller::Component

Represents the current component

QInstaller::Component::SortingPriorityGreaterThan

Sets a decreasing sorting priority for child components

QInstaller::Component::SortingPriorityLessThan

Sets an increasing sorting order for child components

QInstaller::ComponentModel

Holds a data model for visual representation of available components to install

QInstaller::ComponentSelectionPage

Changes the checked state of components

QInstaller::DirectoryGuard

RAII class to create a directory and delete it on destruction unless released

QInstaller::FileTaskItem

Represents an item in a file task object

QInstaller::FileTaskResult

Represents the results of a file task

QInstaller::FinishedPage

Completes the installation wizard

QInstaller::IntroductionPage

Displays information about the product to install

QInstaller::Lib7zArchive

Represents an archive file handled with the LZMA software development kit

QInstaller::LibArchiveArchive

Represents an archive file handled with libarchive archive and compression library

QInstaller::LibArchiveArchive::ArchiveData

Bundles a file device and associated read buffer for access as client data in libarchive callbacks

QInstaller::LibArchiveWrapper

Interface for interacting with archives handled using the libarchive archive and compression library

QInstaller::LicenseAgreementPage

Presents a license agreement to the end users for acceptance

QInstaller::LoggingHandler

Methods for manipulating the application-wide verbosiveness and format of printed debug messages

QInstaller::MessageBoxHandler

Modal dialog for informing the user or asking the user a question and receiving an answer

QInstaller::OperationBlob

Textual representation of an operation that can be instantiated and executed by the Qt Installer Framework

QInstaller::PackageManagerCore

The core functionality of the Qt Installer Framework

QInstaller::PackageManagerGui

The core functionality for non-interactive installations

QInstaller::PackageManagerPage

Displays information about the product to install

QInstaller::PackageSource

Specifies a single package source

QInstaller::PerformInstallationForm

Shows progress information about the installation state

QInstaller::PerformInstallationPage

Shows progress information about the installation state

QInstaller::ReadyForInstallationPage

Informs end users that the installation can begin

QInstaller::Resource

Interface for wrapping a file as read only device

QInstaller::ResourceCollection

Abstraction that groups together a number of resources

QInstaller::ResourceCollectionManager

Abstraction that groups together a number of resource collections

QInstaller::RestartPage

Enables restarting the installer

QInstaller::ScriptEngine

Used to prepare and run the component scripts

QInstaller::StartMenuDirectoryPage

Specifies the program group for the product in the Windows Start menu

QInstaller::SystemInfo

Provides information about the operating system

QInstaller::TargetDirectoryPage

Specifies the target directory for the installation

KDUpdater C++ Classes

GenericFactory

Implements a template-based generic factory

KDUpdater::FileDownloader

The base class for file downloaders used in KDUpdater

KDUpdater::FileDownloaderFactory

Acts as a factory for KDUpdater::FileDownloader

KDUpdater::FileDownloaderProxyFactory

Fine-grained proxy selection

KDUpdater::HttpDownloader

Used to download files over FTP, HTTP, or HTTPS

KDUpdater::LocalFileDownloader

Used to copy files from the local file system

KDUpdater::LocalPackage

Describes a single installed package in the application

KDUpdater::LocalPackageHub

Access to information about packages installed on the application side

KDUpdater::ResourceFileDownloader

Can be used to download resource files

KDUpdater::Task

The base class for all tasks in KDUpdater

KDUpdater::Update

Represents a single update

KDUpdater::UpdateFinder

UpdaterFinder class finds updates applicable for installed packages

KDUpdater::UpdateOperation

Abstract base class for update operations

KDUpdater::UpdateOperationFactory

Used to create update operations based on their name

Lib7z C++ Classes

Lib7z::ExtractCallback

Provides a callback for archive extraction

Lib7z::PercentPrinter

Displays the archiving process

Lib7z::SevenZipException

Class for lib7z exceptions

© 2021 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. The Qt Company, Qt and their respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.