VS_FIXEDFILEINFO

The VS_FIXEDFILEINFO structure contains version information about a file. This information is language and code page independent.

typedef struct _VS_FIXEDFILEINFO {  // vsffi 
    DWORD dwSignature; 
    DWORD dwStrucVersion; 
    DWORD dwFileVersionMS; 
    DWORD dwFileVersionLS; 
    DWORD dwProductVersionMS; 
    DWORD dwProductVersionLS; 
    DWORD dwFileFlagsMask; 
    DWORD dwFileFlags; 
    DWORD dwFileOS; 
    DWORD dwFileType; 
    DWORD dwFileSubtype; 
    DWORD dwFileDateMS; 
    DWORD dwFileDateLS; 
} VS_FIXEDFILEINFO; 
 

Members

dwSignature
Contains the value 0xFEEFO4BD. This is used with the szKey member of the VS_VERSIONINFO structure when searching a file for the VS_FIXEDFILEINFO structure.
dwStrucVersion
Specifies the binary version number of this structure. The high-order word of this member contains the major version number, and the low-order word contains the minor version number.
dwFileVersionMS
Specifies the most significant 32 bits of the file's binary version number. This member is used with dwFileVersionLS to form a 64-bit value used for numeric comparisons.
dwFileVersionLS
Specifies the least significant 32 bits of the file's binary version number. This member is used with dwFileVersionMS to form a 64-bit value used for numeric comparisons.
dwProductVersionMS
Specifies the most significant 32 bits of the binary version number of the product with which this file was distributed. This member is used with dwProductVersionLS to form a 64-bit value used for numeric comparisons.
dwProductVersionLS
Specifies the least significant 32 bits of the binary version number of the product with which this file was distributed. This member is used with dwProductVersionMS to form a 64-bit value used for numeric comparisons.
dwFileFlagsMask
Contains a bitmask that specifies the valid bits in dwFileFlags. A bit is valid only if it was defined when the file was created.
dwFileFlags
Contains a bitmask that specifies the Boolean attributes of the file. This member can include one or more of the following values:
Flag Description
VS_FF_DEBUG The file contains debugging information or is compiled with debugging features enabled.
VS_FF_INFOINFERRED The file's version structure was created dynamically; therefore, some of the members in this structure may be empty or incorrect. This flag should never be set in a file's VS_VERSIONINFO data.
VS_FF_PATCHED The file has been modified and is not identical to the original shipping file of the same version number.
VS_FF_PRERELEASE The file is a development version, not a commercially released product.
VS_FF_PRIVATEBUILD The file was not built using standard release procedures. If this flag is set, the StringFileInfo structure should contain a PrivateBuild entry.
VS_FF_SPECIALBUILD The file was built by the original company using standard release procedures but is a variation of the normal file of the same version number. If this flag is set, the StringFileInfo structure should contain a SpecialBuild entry.

dwFileOS
Specifies the operating system for which this file was designed. This member can be one of the following values:
Flag Description
VOS_DOS The file was designed for MS-DOS.
VOS_NT The file was designed for Windows NT.
VOS__WINDOWS16 The file was designed for 16-bit Windows.
VOS__WINDOWS32 The file was designed for the Win32 API.
VOS_OS216 The file was designed for 16-bit OS/2.
VOS_OS232 The file was designed for 32-bit OS/2.
VOS__PM16 The file was designed for 16-bit Presentation Manager.
VOS__PM32 The file was designed for 32-bit Presentation Manager.
VOS_UNKNOWN The operating system for which the file was designed is unknown to the system.

An application can combine these values to indicate that the file was designed for one operating system running on another. The following dwFileOS values are examples of this, but are not a complete list:
Flag Description
VOS_DOS_WINDOWS16 The file was designed for 16-bit Windows running on MS-DOS.
VOS_DOS_WINDOWS32 The file was designed for the Win32 API running on MS-DOS.
VOS_NT_WINDOWS32 The file was designed for the Win32 API running on Windows NT.
VOS_OS216_PM16 The file was designed for 16-bit Presentation Manager running on 16-bit OS/2.
VOS_OS232_PM32 The file was designed for 32-bit Presentation Manager running on 32-bit OS/2.

dwFileType
Specifies the general type of file. This member can be one of the following values:
Flag Description
VFT_UNKNOWN The file type is unknown to the system.
VFT_APP The file contains an application.
VFT_DLL The file contains a dynamic-link library (DLL).
VFT_DRV The file contains a device driver. If dwFileType is VFT_DRV, dwFileSubtype contains a more specific description of the driver.
VFT_FONT The file contains a font. If dwFileType is VFT_FONT, dwFileSubtype contains a more specific description of the font file.
VFT_VXD The file contains a virtual device.
VFT_STATIC_LIB The file contains a static-link library.

All other values are reserved for future use by Microsoft.

dwFileSubtype
Specifies the function of the file. The possible values depend on the value of dwFileType. For all values of dwFileType not described in the following list, dwFileSubtype is zero.

If dwFileType is VFT_DRV, dwFileSubtype can be one of the following values:
Flag Description
VFT2_UNKNOWN The driver type is unknown by the system.
VFT2_DRV_COMM The file contains a communications driver.
VFT2_DRV_PRINTER The file contains a printer driver.
VFT2_DRV_KEYBOARD The file contains a keyboard driver.
VFT2_DRV_LANGUAGE The file contains a language driver.
VFT2_DRV_DISPLAY The file contains a display driver.
VFT2_DRV_MOUSE The file contains a mouse driver.
VFT2_DRV_NETWORK The file contains a network driver.
VFT2_DRV_SYSTEM The file contains a system driver.
VFT2_DRV_INSTALLABLE The file contains an installable driver.
VFT2_DRV_SOUND The file contains a sound driver.

If dwFileType is VFT_FONT, dwFileSubtype can be one of the following values:
Flag Description
VFT2_UNKNOWN The font type is unknown by the system.
VFT2_FONT_RASTER The file contains a raster font.
VFT2_FONT_VECTOR The file contains a vector font.
VFT2_FONT_TRUETYPE The file contains a TrueType font.

If dwFileType is VFT_VXD, dwFileSubtype contains the virtual device identifier included in the virtual device control block.

All dwFileSubtype values not listed here are reserved for future use by Microsoft.

dwFileDateMS
Specifies the most significant 32 bits of the file's 64-bit binary creation date and time stamp.
dwFileDateLS
Specifies the least significant 32 bits of the file's 64-bit binary creation date and time stamp.

Remarks

The Value member of the VS_VERSIONINFO structure is a VS_FIXEDFILEINFO structure.

QuickInfo

  Windows NT: Requires version 3.1 or later.
  Windows: Requires Windows 95 or later.
  Windows CE: Unsupported.
  Header: Declared in winver.h.

See Also

File Installation Library Overview, File Installation Library Structures, StringFileInfo, String, VS_VERSIONINFO