A RESOURCEHEADER estrutura contém informações sobre o cabeçalho de recurso propriamente dito e os dados específicos a este recurso. Essa estrutura não é uma estrutura de linguagem c verdadeira, porque ele contém membros de comprimento variável. A definição de estrutura fornecida aqui é para explicação apenas; não está presente em qualquer arquivo de cabeçalho padrão.
struct RESOURCEHEADER {DWORD DataSize;
HeaderSize DWORD;
[Ordinal ou nome tipo];
[Ordinal ou nome nome];
DWORD DataVersion;
PALAVRA MemoryFlags;
PALAVRA LanguageId;
Versão DWORD;
Características de DWORD;
}
Se o membro de tipo é um valor numérico, ele pode especificar um padrão ou um tipo de recurso definido pelo usuário. Se o membro for uma Cadeia de caracteres, então é um tipo de recurso definidas pelo usuário.
A seguir estão os tipos de recurso padrão do Win32.
Nome de tipo de recurso | Número de tipo |
---|---|
RT_CURSOR | 1 |
RT_BITMAP | 2 |
RT_ICON | 3 |
RT_MENU | 4 |
RT_DIALOG | 5 |
RT_STRING | 6 |
RT_FONTDIR | 7 |
RT_FONT | 8 |
RT_ACCELERATOR | 9 |
RT_RCDATA | 10 |
RT_MESSAGETABLE | 11 |
RT_GROUP_CURSOR | 12 |
RT_GROUP_ICON | 14 |
RT_VERSION | 16 |
RT_DLGINCLUDE | 17 |
RT_PLUGPLAY | 19 |
RT_VXD | 20 |
RT_ANICURSOR | 21 |
RT_ANIICON | 22 |
RT_HTML | 23 |
Valores menores que 256 são reservados para uso do sistema.
Você não precisará adicionar preenchimento para alinhamento DWORD entre os membros de tipo e o nome porque eles contêm dados do WORD . No entanto, talvez você precise adicionar uma palavra de preenchimento após o nome do membro para alinhar o resto do cabeçalho no DWORD os limites.
Descrição de sinalizador | Valor |
---|---|
MÓVEIS | 0x0010 |
CORRIGIDO | ~ MOVEABLE |
PURO | 0x0020 |
IMPURO | ~ PURO |
PRÉ-CARGA | 0x0040 |
LOADONCALL | ~ PRÉ-CARGA |
DISCARDABLE | 0x1000 |
Aplicativos baseados em Win32 não use nenhum desses atributos. Os atributos são permitidos no script para compatibilidade com versões anteriores com scripts existentes, mas eles são ignorados. Recursos do Win32 são carregados quando o módulo correspondente é carregado e são liberados quando o módulo é descarregado.
Cada recurso inclui um identificador de idioma para que o sistema ou aplicativo possa selecionar um idioma apropriado para a localidade atual do sistema. Se houver vários recursos do mesmo tipo e nome que diferem apenas na língua das seqüências de caracteres dentro de recursos, você precisará especificar um LanguageId para cada um.
Um membro de tipo de variável é chamado um nome ou Ordinal membro e é usado na maioria dos lugares no arquivo de recurso onde aparece um identificador. A primeira palavra de um nome ou Ordinal membro tipo indica se o membro é um valor numérico ou uma Cadeia de caracteres. Se a primeira palavra no membro é igual ao valor de 0xffff, que é um caractere Unicode inválido, em seguida, a seguinte palavra é um número de tipo. Caso contrário, o membro contém uma seqüência de caracteres Unicode e a primeira palavra no membro é o primeiro caractere na cadeia de caracteres de nome. Para obter informações adicionais sobre instruções de definição de recurso, consulte Instruções de definição de recurso.
nbsp; Windows &NT: requer a versão 3.1 ou posterior.
Windows:Requer o Windows 95 ou posterior.
Windows CE:Não suportado.
Visão geral de recursos, recurso estruturas, características instrução, instrução de idioma , Declaração de versão