creator - Establecer la información de la aplicación en un archivo ejecutable Qt en Windows
crear ejecutable qt creator (2)
Así es como lo hago ... agregue un archivo llamado resources.rc a su proyecto con los contenidos:
IDI_ICON1 ICON DISCARDABLE "res/app.ico"
#include <windows.h>
#include "version.h"
VS_VERSION_INFO VERSIONINFO
FILEVERSION VER_FILEVERSION
PRODUCTVERSION VER_PRODUCTVERSION
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040904E4"
BEGIN
VALUE "CompanyName", VER_COMPANYNAME_STR
VALUE "FileDescription", VER_FILEDESCRIPTION_STR
VALUE "FileVersion", VER_FILEVERSION_STR
VALUE "InternalName", VER_INTERNALNAME_STR
VALUE "LegalCopyright", VER_LEGALCOPYRIGHT_STR
VALUE "LegalTrademarks1", VER_LEGALTRADEMARKS1_STR
VALUE "LegalTrademarks2", VER_LEGALTRADEMARKS2_STR
VALUE "OriginalFilename", VER_ORIGINALFILENAME_STR
VALUE "ProductName", VER_PRODUCTNAME_STR
VALUE "ProductVersion", VER_PRODUCTVERSION_STR
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x409, 1252
END
END
y un archivo llamado version.h con los contenidos:
#ifndef VERSION_H
#define VERSION_H
#define VER_FILEVERSION 1,0,0,0
#define VER_FILEVERSION_STR "1.0.0.0/0"
#define VER_PRODUCTVERSION 1,0,0,0
#define VER_PRODUCTVERSION_STR "1.0/0"
#define VER_COMPANYNAME_STR "Your Organization"
#define VER_FILEDESCRIPTION_STR "CoolApplication"
#define VER_INTERNALNAME_STR "CoolApplication"
#define VER_LEGALCOPYRIGHT_STR "Copyright © 2010 Your Organization"
#define VER_LEGALTRADEMARKS1_STR "All Rights Reserved"
#define VER_LEGALTRADEMARKS2_STR VER_LEGALTRADEMARKS1_STR
#define VER_ORIGINALFILENAME_STR "coolapplication.exe"
#define VER_PRODUCTNAME_STR "CoolApplication"
#define VER_COMPANYDOMAIN_STR "example.org"
#endif // VERSION_H
y finalmente a su archivo .pro, agregue: RC_FILE = resources.rc
. Las plataformas que no sean Windows ignorarán el valor, por lo que no es necesario prefijarlo con win32:
¿Alguien tiene consejos sobre cómo configurar la información de la aplicación (es decir, hacer clic derecho en .exe-> propiedades) desde Qt?
Puedo agregar cadenas de versión arbitrarias al archivo de recursos de Qt (qrc) y mostrarlas. Pero la mayoría de los instaladores de Windows comprueban el número de versión y no puedo encontrar una forma de Qt de configurar estos campos, aparte de mantener manualmente un archivo .RC separado
¡De alguna manera que le permita actualizar esto desde una construcción automatizada también sería bueno!
De acuerdo, dos años después de que me lo pidieron ... pero quizás alguien lo encuentre útil ...
Intenta usar las siguientes variables de qmake:
VERSION = 0.4.0.1
QMAKE_TARGET_COMPANY = company
QMAKE_TARGET_PRODUCT = product
QMAKE_TARGET_DESCRIPTION = description
QMAKE_TARGET_COPYRIGHT = copyright
Más información here .