VS_FIXEDFILEINFO 结构 (verrsrc.h)

包含文件的版本信息。 此信息与语言和代码页无关。

语法

typedef struct tagVS_FIXEDFILEINFO {
  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;

成员

dwSignature

类型:DWORD

包含值0xFEEF04BD。 在文件中搜索 VS_FIXEDFILEINFO 结构时,这与 VS_VERSIONINFO结构的szKey 成员一起使用。

dwStrucVersion

类型:DWORD

此结构的二进制版本号。 此成员的高序字包含主版本号,低序字包含次要版本号。

dwFileVersionMS

类型:DWORD

文件二进制版本号中最重要的 32 位。 此成员与 dwFileVersionLS 一起使用,形成用于数字比较的 64 位值。

dwFileVersionLS

类型:DWORD

文件二进制版本号中最低有效 32 位。 此成员与 dwFileVersionMS 一起使用,形成用于数字比较的 64 位值。

dwProductVersionMS

类型:DWORD

分发此文件的产品的二进制版本号中最重要的 32 位。 此成员与 dwProductVersionLS 一起使用,形成用于数字比较的 64 位值。

dwProductVersionLS

类型:DWORD

分发此文件的产品的二进制版本号中最低有效 32 位。 此成员与 dwProductVersionMS 一起使用,形成用于数字比较的 64 位值。

dwFileFlagsMask

类型:DWORD

包含指定 dwFileFlags 中的有效位的位掩码。 仅当在创建文件时定义位时,位才有效。

dwFileFlags

类型:DWORD

包含指定文件的布尔属性的位掩码。 此成员可以包含以下一个或多个值。

含义
VS_FF_DEBUG
0x00000001L
该文件包含调试信息,或者在启用调试功能的情况下进行编译。
VS_FF_INFOINFERRED
0x00000010L
文件的版本结构是动态创建的;因此,此结构中的某些成员可能为空或不正确。 切勿在文件的 VS_VERSIONINFO 数据中设置此标志。
VS_FF_PATCHED
0x00000004L
该文件已修改,与同一版本号的原始发货文件不同。
VS_FF_PRERELEASE
0x00000002L
该文件是开发版本,而不是商业发布的产品。
VS_FF_PRIVATEBUILD
0x00000008L
文件不是使用标准发布过程生成的。 如果设置了此标志, StringFileInfo 结构应包含 PrivateBuild 条目。
VS_FF_SPECIALBUILD
0x00000020L
该文件由原始公司使用标准发布过程生成,但是相同版本号的正常文件的变体。 如果设置了此标志, StringFileInfo 结构应包含 SpecialBuild 条目。

dwFileOS

类型:DWORD

为其设计此文件的操作系统。 此成员可以是以下值之一。

含义
VOS_DOS
0x00010000L
该文件是为 MS-DOS 设计的。
VOS_NT
0x00040000L
该文件是为 Windows NT 设计的。
VOS__WINDOWS16
0x00000001L
该文件专为 16 位 Windows 设计。
VOS__WINDOWS32
0x00000004L
该文件专为 32 位 Windows 设计。
VOS_OS216
0x00020000L
该文件专为 16 位 OS/2 设计。
VOS_OS232
0x00030000L
该文件专为 32 位 OS/2 设计。
VOS__PM16
0x00000002L
该文件专为 16 位演示文稿管理器设计。
VOS__PM32
0x00000003L
该文件专为 32 位演示文稿管理器设计。
VOS_UNKNOWN
0x00000000L
系统不知道为其设计文件的操作系统。
 

应用程序可以合并这些值,以指示该文件是为另一个上运行的操作系统设计的。 以下 dwFileOS 值是这方面的示例,但不是完整列表。

含义
VOS_DOS_WINDOWS16
0x00010001L
该文件专为在 MS-DOS 上运行的 16 位 Windows 而设计。
VOS_DOS_WINDOWS32
0x00010004L
该文件专为 MS-DOS 上运行的 32 位 Windows 而设计。
VOS_NT_WINDOWS32
0x00040004L
该文件是为 Windows NT 设计的。
VOS_OS216_PM16
0x00020002L
该文件专为在 16 位 OS/2 上运行的 16 位演示文稿管理器而设计。
VOS_OS232_PM32
0x00030003L
该文件专为在 32 位 OS/2 上运行的 32 位演示文稿管理器而设计。

dwFileType

类型:DWORD

文件的常规类型。 此成员可以是以下值之一。 所有其他值都保留。

含义
VFT_APP
0x00000001L
文件包含一个应用程序。
VFT_DLL
0x00000002L
文件包含 DLL。
VFT_DRV
0x00000003L
文件包含设备驱动程序。 如果 dwFileTypeVFT_DRV则 dwFileSubtype 包含驱动程序的更具体说明。
VFT_FONT
0x00000004L
文件包含字体。 如果 dwFileTypeVFT_FONT则 dwFileSubtype 包含字体文件的更具体说明。
VFT_STATIC_LIB
0x00000007L
文件包含静态链接库。
VFT_UNKNOWN
0x00000000L
系统不知道文件类型。
VFT_VXD
0x00000005L
该文件包含一个虚拟设备。

dwFileSubtype

类型:DWORD

文件的函数。 可能的值取决于 dwFileType 的值。 对于以下列表中未描述的所有 dwFileType 值, dwFileSubtype 为零。

如果 dwFileTypeVFT_DRV则 dwFileSubtype 可以是以下值之一。

含义
VFT2_DRV_COMM
0x0000000AL
文件包含通信驱动程序。
VFT2_DRV_DISPLAY
0x00000004L
文件包含显示驱动程序。
VFT2_DRV_INSTALLABLE
0x00000008L
文件包含可安装的驱动程序。
VFT2_DRV_KEYBOARD
0x00000002L
文件包含键盘驱动程序。
VFT2_DRV_LANGUAGE
0x00000003L
文件包含语言驱动程序。
VFT2_DRV_MOUSE
0x00000005L
文件包含鼠标驱动程序。
VFT2_DRV_NETWORK
0x00000006L
文件包含网络驱动程序。
VFT2_DRV_PRINTER
0x00000001L
文件包含打印机驱动程序。
VFT2_DRV_SOUND
0x00000009L
该文件包含声音驱动程序。
VFT2_DRV_SYSTEM
0x00000007L
文件包含系统驱动程序。
VFT2_DRV_VERSIONED_PRINTER
0x0000000CL
文件包含版本控制打印机驱动程序。
VFT2_UNKNOWN
0x00000000L
系统未知驱动程序类型。
 

如果 dwFileTypeVFT_FONT则 dwFileSubtype 可以是以下值之一。

含义
VFT2_FONT_RASTER
0x00000001L
文件包含光栅字体。
VFT2_FONT_TRUETYPE
0x00000003L
文件包含 TrueType 字体。
VFT2_FONT_VECTOR
0x00000002L
文件包含矢量字体。
VFT2_UNKNOWN
0x00000000L
系统未知字体类型。
 

如果 dwFileTypeVFT_VXD则 dwFileSubtype 包含虚拟设备控制块中包含的虚拟设备标识符。

此处未列出的所有 dwFileSubtype 值都是保留的。

dwFileDateMS

类型:DWORD

文件的 64 位二进制创建日期和时间戳中最重要的 32 位。

dwFileDateLS

类型:DWORD

文件的 64 位二进制创建日期和时间戳中最小有效 32 位。

要求

   
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
标头 verrsrc.h (包括 Windows.h)

请参阅

概念性

引用

字符串

StringFileInfo

VS_VERSIONINFO

版本信息