Recurso VERSIONINFO

Define un recurso de información de versión. El recurso contiene dicha información sobre el archivo como su número de versión, su sistema operativo previsto y su nombre de archivo original. El recurso está pensado para usarse con las funciones información de versión .

Hay dos maneras de dar formato a una instrucción VERSIONINFO :

versionID VERSIONINFO fixed-info  { block-statement . . . }

O bien

versionID VERSIONINFO 
fixed-info
BEGIN
block-statement
. . .
END

Parámetros

versionID

Identificador de recursos de información de versión. Este valor debe ser 1.

fixed-info

Información de versión, como la versión del archivo y el sistema operativo previsto. Este parámetro consta de las siguientes instrucciones.

. Descripción
Versión de FILEVERSION Número de versión binario del archivo. La versión consta de dos enteros de 32 bits, definidos por cuatro enteros de 16 bits. Por ejemplo, "FILEVERSION 3,10,0,61" se traduce en dos palabras dobles: 0x0003000a y 0x0000003d, en ese orden. Por lo tanto, si los valores DWORDdw1 y dw2 definen la versión, deben aparecer en la instrucción FILEVERSION de la siguiente manera: HIWORD(dw1), LOWORD(dw1), HIWORD(dw2), LOWORD(dw2).
Versión de PRODUCTVERSION Número de versión binaria del producto con el que se distribuye el archivo. El parámetro version es dos enteros de 32 bits, definidos por cuatro enteros de 16 bits. Para obtener más información sobre la versión, vea la descripción de FILEVERSION .
FILEFLAGSMASKfileflagsmask Indica qué bits de la instrucción FILEFLAGS son válidos. Para Windows de 16 bits, este valor es 0x3f.
FILEFLAGSfileflags Atributos del archivo.
FILEOS fileos Sistema operativo para el que se diseñó este archivo. El parámetro fileos puede ser uno de los valores del sistema operativo proporcionados en la sección Comentarios.
FILETYPE filetype Tipo general de archivo. El parámetro filetype puede ser uno de los valores de tipo de archivo enumerados en la sección Comentarios.
Subtipo FILESUBTYPE Función del archivo. El parámetro de subtipo es cero a menos que el parámetro filetype de la instrucción FILETYPE sea VFT_DRV, VFT_FONT o VFT_VXD. Para obtener una lista de los valores de subtipo de archivo, vea la sección Comentarios.

 

block-statement

Especifica uno o varios bloques de información de versión. Un bloque puede contener información de cadena o información de variables. Para obtener más información, vea StringFileInfo Block o VarFileInfo Block.

Comentarios

Para usar las constantes especificadas con la instrucción VERSIONINFO , debe incluir el archivo de encabezado Winver.h o Windows.h en el archivo de definición de recursos.

En la lista siguiente se describen los parámetros usados en la instrucción VERSIONINFO :

fileflags

Combinación de los valores siguientes.

Value Descripción
VS_FF_DEBUG El archivo contiene información de depuración o se compila con las características de depuración habilitadas.
VS_FF_PATCHED El archivo se ha modificado y no es idéntico al archivo de envío original del mismo número de versión.
VS_FF_PRERELEASE El archivo es una versión de desarrollo, no un producto publicado comercialmente.
VS_FF_PRIVATEBUILD El archivo no se creó mediante procedimientos de versión estándar. Si se proporciona este valor, el bloque StringFileInfo debe contener una cadena de PrivateBuild .
VS_FF_SPECIALBUILD El archivo fue creado por la empresa original con procedimientos de versión estándar, pero es una variación del archivo estándar del mismo número de versión. Si se da este valor, el bloque de bloque StringFileInfo debe contener una cadena SpecialBuild.
VS_FFI_FILEFLAGSMASK Combinación de todos los valores anteriores.

 

fileos

Uno de los siguientes valores.

Valor Descripción
VOS_UNKNOWN El sistema operativo para el que se diseñó el archivo es desconocido.
VOS_DOS El archivo se diseñó para MS-DOS.
VOS_NT El archivo se diseñó para Windows de 32 bits.
VOS__WINDOWS16 El archivo se diseñó para Windows de 16 bits.
VOS__WINDOWS32 El archivo se diseñó para Windows de 32 bits.
VOS_DOS_WINDOWS16 El archivo se diseñó para Windows de 16 bits que se ejecuta con MS-DOS.
VOS_DOS_WINDOWS32 El archivo se diseñó para Windows de 32 bits que se ejecuta con MS-DOS.
VOS_NT_WINDOWS32 El archivo se diseñó para Windows de 32 bits.

 

Los valores 0x00002L, 0x00003L, 0x20000L y 0x30000L están reservados.

Eltipo

Uno de los siguientes valores.

Valor Descripción
VFT_UNKNOWN El tipo de archivo es desconocido.
VFT_APP El archivo contiene una aplicación.
VFT_DLL El archivo contiene una biblioteca de vínculos dinámicos (DLL).
VFT_DRV El archivo contiene un controlador de dispositivo. Si filetype es VFT_DRV, el subtipo contiene una descripción más específica del controlador.
VFT_FONT El archivo contiene una fuente. Si filetype es VFT_FONT, el subtipo contiene una descripción más específica de la fuente.
VFT_VXD El archivo contiene un dispositivo virtual.
VFT_STATIC_LIB El archivo contiene una biblioteca de vínculos estáticos.

 

Todos los demás valores están reservados para su uso por Parte de Microsoft.

Subtipo

Información adicional sobre el tipo de archivo.

Si filetype especifica VFT_DRV, este parámetro puede ser uno de los valores siguientes.

Value Descripción
VFT2_UNKNOWN El tipo de controlador es desconocido.
VFT2_DRV_COMM El archivo contiene un controlador de comunicaciones.
VFT2_DRV_PRINTER El archivo contiene un controlador de impresora.
VFT2_DRV_KEYBOARD El archivo contiene un controlador de teclado.
VFT2_DRV_LANGUAGE El archivo contiene un controlador de idioma.
VFT2_DRV_DISPLAY El archivo contiene un controlador de pantalla.
VFT2_DRV_MOUSE El archivo contiene un controlador del mouse.
VFT2_DRV_NETWORK El archivo contiene un controlador de red.
VFT2_DRV_SYSTEM El archivo contiene un controlador del sistema.
VFT2_DRV_INSTALLABLE El archivo contiene un controlador instalable.
VFT2_DRV_SOUND El archivo contiene un controlador de sonido.
VFT2_DRV_VERSIONED_PRINTER El archivo contiene un controlador de impresora con versiones.

 

Si filetype especifica VFT_FONT, este parámetro puede ser uno de los siguientes valores.

Value Descripción
VFT2_UNKNOWN El tipo de fuente es desconocido.
VFT2_FONT_RASTER El archivo contiene una fuente ráster.
VFT2_FONT_VECTOR El archivo contiene una fuente vectorial.
VFT2_FONT_TRUETYPE El archivo contiene una fuente TrueType.

 

Si filetype especifica VFT_VXD, este parámetro debe ser el identificador de dispositivo virtual incluido en el bloque de control de dispositivo virtual.

Todos los valores de subtipo que no aparecen aquí están reservados para su uso por Parte de Microsoft.

langID

Uno de los siguientes códigos de idioma.

Código Idioma Código Idioma
0x0401 Árabe 0x0415 Polaco
0x0402 Búlgaro 0x0416 Portugués (Brasil)
0x0403 Catalán 0x0417 Rhaeto-Romanic
0x0404 Chino tradicional 0x0418 Rumano
0x0405 Checo 0x0419 Ruso
0x0406 Danés 0x041A Croato-Serbian (latino)
0x0407 Alemán 0x041B Eslovaco
0x0408 Griego 0x041C Albanés
0x0409 Inglés de EE. UU. 0x041D Sueco
0x040A Español castellano 0x041E Tailandés
0x040B Finés 0x041F Turco
0x040C Francés 0x0420 Urdu
0x040D Hebreo 0x0421 Bahasa
0x040E Húngaro 0x0804 Chino simplificado
0x040F Islandés 0x0807 Alemán suizo
0x0410 Italiano 0x0809 Inglés de Reino Unido
0x0411 Japonés 0x080A Español (México)
0x0412 Coreano 0x080C Francés belga
0x0413 Neerlandés 0x0C0C Francés canadiense
0x0414 ¿Noruego? Bokmal 0x100C Francés suizo
0x0810 Italiano suizo 0x0816 Portugués (Portugal)
0x0813 Neerlandés belga 0x081A Serbo-Croatian (cirílico)
0x0814 ¿Noruego? Nynorsk

 

charsetID

Uno de los siguientes identificadores de juego de caracteres.

Decimal Hexadecimal Juego de caracteres
0 0000 ASCII de 7 bits
932 03A4 Japón (Shift ? JIS X-0208)
949 03B5 Corea (Shift ? KSC 5601)
950 03B6 Taiwán (Big5)
1200 04B0 Unicode
1250 04E2 Latino-2 (Europa oriental)
1251 04E3 Cirílico
1252 04E4 Multilingüe
1253 04E5 Griego
1254 04E6 Turco
1255 04E7 Hebreo
1256 04E8 Árabe

 

string-name

Uno de los siguientes nombres predefinidos.

Nombre Descripción
Comentarios Información adicional que se debe mostrar con fines de diagnóstico.
CompanyName Compañía que generó el archivo, por ejemplo, Microsoft Corporation o Standard Microsystems Corporation, Inc. Esta cadena es necesaria.
FileDescription Descripción del archivo que se va a presentar a los usuarios. Esta cadena se puede mostrar en un cuadro de lista cuando el usuario elige archivos para instalar, por ejemplo, Keyboard Driver for AT-Style Keyboards. Esta cadena es necesaria.
FileVersion Número de versión del archivo, por ejemplo, 3.10 o 5.00.RC2. Esta cadena es necesaria.
InternalName Nombre interno del archivo, si existe, por ejemplo, un nombre de módulo si el archivo es una biblioteca de vínculos dinámicos. Si el archivo no tiene ningún nombre interno, esta cadena debe ser el nombre de archivo original, sin extensión. Esta cadena es necesaria.
LegalCopyright Avisos de copyright que se aplican al archivo. Esto debe incluir el texto completo de todos los avisos, símbolos legales, fechas de copyright, etc. Esta cadena es opcional.
LegalTrademarks Marcas comerciales y marcas registradas que se aplican al archivo. Esto debe incluir el texto completo de todos los avisos, símbolos legales, números de marcas comerciales, etc. Esta cadena es opcional.
OriginalFilename Nombre original del archivo, no incluida una ruta de acceso. Esta información permite a una aplicación determinar si un usuario ha cambiado el nombre de un archivo. El formato del nombre depende del sistema de archivos para el que se creó el archivo. Esta cadena es necesaria.
PrivateBuild Información sobre una versión privada del archivo, por ejemplo, Built by TESTER1 on \\TESTBED. Esta cadena solo debe estar presente si se especifica VS_FF_PRIVATEBUILD en el parámetro fileflags del bloque raíz.
ProductName Nombre del producto con el que se distribuye el archivo. Esta cadena es necesaria.
ProductVersion Versión del producto con el que se distribuye el archivo( por ejemplo, 3.10 o 5.00.RC2. Esta cadena es necesaria.
SpecialBuild Texto que especifica cómo difiere esta versión del archivo de la versión estándar, por ejemplo, Private build for TESTER1 solving mouse problems on M250 and M250E computers. Esta cadena solo debe estar presente si VS_FF_SPECIALBUILD se especifica en el parámetro fileflags del bloque raíz.

 

Algunos atributos también se admiten para la compatibilidad con versiones anteriores. Para obtener más información, consulte Atributos de recursos comunes.

Ejemplos

En el ejemplo siguiente se define un recurso VERSIONINFO :

#define VER_FILEVERSION             3,10,349,0
#define VER_FILEVERSION_STR         "3.10.349.0\0"

#define VER_PRODUCTVERSION          3,10,0,0
#define VER_PRODUCTVERSION_STR      "3.10\0"

#ifndef DEBUG
#define VER_DEBUG                   0
#else
#define VER_DEBUG                   VS_FF_DEBUG
#endif

VS_VERSION_INFO VERSIONINFO
FILEVERSION     VER_FILEVERSION
PRODUCTVERSION  VER_PRODUCTVERSION
FILEFLAGSMASK   VS_FFI_FILEFLAGSMASK
FILEFLAGS       (VER_PRIVATEBUILD|VER_PRERELEASE|VER_DEBUG)
FILEOS          VOS__WINDOWS32
FILETYPE        VFT_DLL
FILESUBTYPE     VFT2_UNKNOWN
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
        /* The following line should only be modified for localized versions.     */
        /* It consists of any number of WORD,WORD pairs, with each pair           */
        /* describing a language,codepage combination supported by the file.      */
        /*                                                                        */
        /* For example, a file might have values "0x409,1252" indicating that it  */
        /* supports English language (0x409) in the Windows ANSI codepage (1252). */

        VALUE "Translation", 0x409, 1252

    END
END

Consulte también

Uso de la información de versión

Información de versión