VS_FIXEDFILEINFO结构包含有关文件的版本信息。这个信息是语言和代码页独立的。
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;
会员
dwSignature
包含值0xFEEFO4BD。当搜索VS_FIXEDFILEINFO结构的文件时,这与VS_VERSION_INFO数据的szKey成员一起使用。
dwStrucVersion
指定此结构的二进制版本号。该成员的高位字包含主版本号,低位字包含次版本号。
dwFileVersionMS
指定文件二进制版本号的最高32位。该成员与dwFileVersionLS一起使用,形成用于数字比较的64位值。
dwFileVersionLS
指定文件二进制版本号的最低有效32位。该成员与dwFileVersionMS一起使用,形成用于数字比较的64位值。
dwProductVersionMS
指定此文件分发的产品的二进制版本号的最高32位。该成员与dwProductVersionLS一起使用以形成用于数字比较的64位值。
dwProductVersionLS
指定此文件分发的产品的二进制版本号的最低有效32位。该成员与dwProductVersionMS一起使用以形成用于数字比较的64位值。
dwFileFlagsMask
包含指定dwFileFlags中有效位的位掩码。只有在创建文件时定义了该位才有效。
dwFileFlags
包含指定文件的布尔属性的位掩码。该成员可以包括一个或多个以下值:
旗 | 描述 |
VS_FF_DEBUG | 该文件包含调试信息或已启用调试功能的编译。 |
VS_FF_INFOINFERRED | 该文件的版本结构是动态创建的;因此,这种结构中的某些成员可能是空的或不正确的。不应在文件的VS_VERSION_INFO数据中设置此标志。 |
VS_FF_PATCHED | 该文件已被修改,并且与相同版本号的原始发送文件不同。 |
VS_FF_PRERELEASE | 该文件是开发版本,而不是商业上发布的产品。 |
VS_FF_PRIVATEBUILD | 该文件未使用标准版本的程序生成。如果设置此标志,则StringFileInfo结构应包含一个PrivateBuild条目。 |
VS_FF_SPECIALBUILD | 该文件由原始公司使用标准版本程序构建,但是相同版本号的正常文件的变体。如果设置此标志,则StringFileInfo结构应包含一个SpecialBuild条目。 |
dwFileOS
指定此文件设计的操作系统。该成员可以是以下值之一:
旗 | 描述 |
VOS_UNKNOWN | 文件设计的操作系统对Windows而言是未知的。 |
VOS_NT | 该文件是为Windows NT设计的。 |
VOS_WINDOWS32 | 该文件是为Win32 API设计的。 |
应用程序可以组合这些值以指示该文件是为在另一个上运行的一个操作系统而设计的。以下dwFileOS值是这些示例,但不是完整的列表:
旗 | 描述 |
VOS_DOS_WINDOWS32 | 该文件专为在MS-DOS上运行的Win32 API而设计。 |
VOS_NT_WINDOWS32 | 该文件是为在Windows NT上运行的Win32 API设计的。 |
dwFileType
指定文件的一般类型。该成员可以是以下值之一:
旗 | 描述 |
VFT_UNKNOWN | Windows的文件类型是未知的。 |
VFT_APP | 该文件包含一个应用程序。 |
VFT_DLL | 该文件包含一个动态链接库(DLL)。 |
VFT_DRV | 该文件包含一个设备驱动程序。如果dwFileType为VFT_DRV,则dwFileSubtype包含更详细的驱动程序说明。 |
VFT_FONT | 该文件包含一个字体。如果dwFileType为VFT_FONT,dwFileSubtype包含更具体的字体文件说明。 |
VFT_VXD | 该文件包含一个虚拟设备。 |
VFT_STATIC_LIB | 该文件包含静态链接库。 |
所有其他值保留供Microsoft将来使用。
dwFileSubtype
指定文件的功能。可能的值取决于dwFileType的值。对于以下列表中未描述的dwFileType的所有值,dwFileSubtype为零。
如果dwFileType为VFT_DRV,则dwFileSubtype可以是以下值之一:
旗 | 描述 |
VFT2_UNKNOWN | Windows驱动程序类型未知。 |
VFT2_DRV_PRINTER | 该文件包含打印机驱动程序。 |
VFT2_DRV_KEYBOARD | 该文件包含一个键盘驱动程序。 |
VFT2_DRV_LANGUAGE | 该文件包含语言驱动程序。 |
VFT2_DRV_DISPLAY | 该文件包含显示驱动程序。 |
VFT2_DRV_MOUSE | 该文件包含鼠标驱动程序。 |
VFT2_DRV_NETWORK | 该文件包含网络驱动程序。 |
VFT2_DRV_SYSTEM | 该文件包含一个系统驱动程序。 |
VFT2_DRV_INSTALLABLE | 该文件包含可安装的驱动程序。 |
VFT2_DRV_SOUND | 该文件包含声音驱动程序。 |
如果dwFileType为VFT_FONT,则dwFileSubtype可以是以下值之一:
旗 | 描述 |
VFT2_UNKNOWN | Windows的字体类型是未知的。 |
VFT2_FONT_RASTER | 该文件包含一个栅格字体。 |
VFT2_FONT_VECTOR | 该文件包含一个矢量字体。 |
VFT2_FONT_TRUETYPE | 该文件包含TrueType字体。 |
如果dwFileType为VFT_VXD,则dwFileSubtype包含虚拟设备控制块中包含的虚拟设备标识符。
此处未列出的所有dwFileSubtype值保留供Microsoft以后使用。
dwFileDateMS
指定文件的64位二进制创建日期和时间戳的最高32位。
dwFileDateLS
指定文件的64位二进制创建日期和时间戳的最低有效32位。
备注
VS_VERSION_INFO数据的值成员是VS_FIXEDFILEINFO结构。
也可以看看