La struttura RESOURCEHEADER contiene informazioni sull'intestazione della risorsa stessa e i dati specifici per questa risorsa. Questa struttura non è una vera struttura del linguaggio C, perché contiene membri di lunghezza variabile. La definizione della struttura a condizione che sia qui per spiegazione solo; non è presente in tutti i file header standard.
struct RESOURCEHEADER {DWORD DataSize;
DWORD HeaderSize;
[Ordinale o nome TYPE];
[Ordinale o nome nome];
DWORD DataVersion;
WORD MemoryFlags;
PAROLA LanguageId;
DWORD versione;
DWORD caratteristiche;
}
Se il membro di tipo è un valore numerico, è possibile specificare uno standard o un tipo di risorsa definite dall'utente. Se il membro è una stringa, allora è un tipo di risorsa definite dall'utente.
Di seguito sono riportati i tipi di risorsa Win32 standard.
| Nome del tipo di risorsa | Numero del 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 |
Valori minori di 256 sono riservati per l'utilizzo del sistema.
Non è necessario aggiungere la spaziatura interna per DWORD allineamento tra i membri del tipo e il nome perché contengono dati della parola . Tuttavia, potrebbe essere necessario aggiungere una parola di imbottitura dopo il nome membro per allineare il resto dell'intestazione su limiti DWORD.
| Descrizione bandiera | Valore |
|---|---|
| MOVEABLE | 0x0010 |
| FISSO | ~ MOVEABLE |
| PURO | 0x0020 |
| IMPURO | ~ PURO |
| PRECARICO | 0x0040 |
| LOADONCALL | ~ PRECARICO |
| SCARICABILE | 0x1000 |
Applicazioni basate su Win32 non utilizzano uno qualsiasi di questi attributi. Gli attributi sono consentiti nello script per garantire la compatibilità con gli script esistenti, ma sono ignorati. Risorse Win32 vengono caricate quando viene caricato il modulo corrispondente e vengono liberati quando il modulo viene scaricato.
Ogni risorsa include un identificatore di lingua, quindi il sistema o un'applicazione può selezionare un linguaggio appropriato per le impostazioni locali del sistema. Se ci sono più risorse dello stesso tipo e nome che differiscono solo nel linguaggio delle stringhe all'interno le risorse, è necessario specificare un LanguageId per ciascuno di essi.
Un membro di tipo variabile viene chiamato un nome o ordinale membri ed è utilizzato nella maggior parte dei posti nel file di risorse dove appare un identificatore. La prima parola di un nome o ordinale membro del tipo indica se il membro è un valore numerico o una stringa. Se la prima parola nel membro è uguale al valore 0xffff, che è un carattere Unicode non valido, la seguente parola è un numero. In caso contrario, il membro contiene una stringa Unicode e la prima parola nel membro è il primo carattere della stringa del nome. Per ulteriori informazioni su istruzioni di definizione delle risorse, vedere Istruzioni di definizione delle risorse.
nbsp; Windows &NT: richiede 3.1 o versione successiva.
Windows:Richiede Windows 95 o versioni successive.
Windows CE:Non supportato.
Panoramica di risorse, strutture di risorsa, caratteristiche istruzione, istruzione LANGUAGE , VERSIONE istruzione
Rimedio: Inserire il CD-ROM CD di MSDN Library.