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

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

Value 含义
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

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

Value 含义
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 值是此类示例,但不是完整列表。

Value 含义
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

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

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

dwFileSubtype

类型:DWORD

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

如果 dwFileTypeVFT_DRVdwFileSubtype 可以是以下值之一。

Value 含义
VFT2_DRV_COMM
0x00000000AL
该文件包含通信驱动程序。
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_FONTdwFileSubtype 可以是以下值之一。

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

如果 dwFileTypeVFT_VXDdwFileSubtype 将包含虚拟设备控制块中包含的虚拟设备标识符。

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

dwFileDateMS

类型:DWORD

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

dwFileDateLS

类型:DWORD

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

要求

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

另请参阅

概念性

参考

字符串

StringFileInfo

VS_VERSIONINFO

版本信息