RESOURCEHEADER 结构

包含有关资源标头本身和特定于此资源的数据的信息。 此结构不是真正的 C 语言结构,因为它包含可变长度的成员。 此处提供的结构定义仅用于说明:它不存在于任何标准头文件中。

语法

typedef struct {
  DWORD DataSize;
  DWORD HeaderSize;
  DWORD TYPE;
  DWORD NAME;
  DWORD DataVersion;
  WORD  MemoryFlags;
  WORD  LanguageId;
  DWORD Version;
  DWORD Characteristics;
} RESOURCEHEADER;

成员

DataSize

类型:DWORD

此特定资源的资源标头后面的数据的大小(以字节为单位)。 它不包括此资源与资源文件中其后的任何资源之间的任何文件填充。

HeaderSize

类型:DWORD

后面的资源标头数据的大小(以字节为单位)。

TYPE

类型:DWORD

资源类型。 TYPE 成员可以是数值,也可以是指定类型名称的以 null 结尾的 Unicode 字符串。 有关 名称序号 类型成员的说明,请参阅以下“备注”部分。

如果 TYPE 成员是数值,则可以指定标准或用户定义的资源类型。 如果该成员是字符串,则它是用户定义的资源类型。 有关预定义资源类型的列表,请参阅 资源类型

小于 256 的值保留供系统使用。

NAME

类型:DWORD

标识特定资源的名称。 与 TYPE 成员一样,NAME 成员可以是数值,也可以是以 null 结尾的 Unicode 字符串。 有关 名称序号 类型成员的说明,请参阅以下“备注”部分。

无需为 TYPENAME 成员之间的 DWORD 对齐方式添加填充,因为它们包含 WORD 数据。 但是,可能需要在 NAME 成员后面添加一个 WORD 填充,以对齐 DWORD 边界上的标头的其余部分。

DataVersion

类型:DWORD

预定义的资源数据版本。 这将确定应用程序应使用的资源数据版本。

MemoryFlags

类型: WORD

一组可描述资源状态的属性标志。 中的修饰符。RC 脚本文件将这些属性分配给资源。 脚本标识符可以分配以下标志值。

应用程序不使用上述任何属性。 允许在脚本中使用这些属性,以便与现有脚本向后兼容,但它们将被忽略。 在加载相应的模块时加载资源,在卸载模块时释放资源。

可移动 (0x0010)

修复了 (~MOVEABLE)

PURE (0x0020)

IMPURE (~PURE)

PRELOAD (0x0040)

LOADONCALL (~PRELOAD)

可丢弃 (0x1000)

LanguageId

类型: WORD

资源或资源集的语言。 使用可选的 LANGUAGE 资源定义语句设置此成员的值。 参数是 Winnt.h 文件中的常量。

每个资源都包含一个语言标识符,以便系统或应用程序可以选择适合系统当前区域设置的语言。 如果有多个相同类型和名称的资源,这些资源仅在资源中的字符串的语言上不同,则需要为每个资源指定 一个 LanguageId

Version

类型:DWORD

资源数据的用户定义版本号,工具可用于读取和写入资源文件。 使用可选的 VERSION 资源定义语句设置此值。

特征

类型:DWORD

指定有关资源的用户定义信息,工具可用于读取和写入资源文件。 使用可选的 CHARACTERISTICS 资源定义语句设置此值。

备注

变量类型成员称为 NameOrdinal 成员,它用于资源文件中显示标识符的大多数位置。 名称序号类型成员的第一个 WORD 指示该成员是数值还是字符串。 如果成员中的第一个 WORD 等于 0xffff 的值(即无效的 Unicode 字符),则以下 WORD 是一个类型号。 否则,成员包含 Unicode 字符串,成员中的第一个 WORD 是名称字符串中的第一个字符。 有关资源定义语句的其他信息,请参阅 Resource-Definition 语句

要求

要求
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]

另请参阅

概念性

资源

其他资源

CHARACTERISTICS 语句

LANGUAGE 语句

VERSION 语句