Formatele de fișier resursă Win32

Această secțiune descrie formatul de Fișier binar resursă care creează compilator resurse pe baza conținutului fișierului de definiție de resurse. Acest fișier are de obicei un.Extinderea RES. Linker-ul reformatează.RES fișier într-un fișier de resurse obiect și apoi link-uri către fi?ierul executabil de o aplicație Win32 bazată pe.

Un fișier binar resurse constă dintr-un număr de resursă concatenat intrări. Fiecare intrare dintr-un antet de resurse ?i datele pentru această resursă. Un antet de resurse este DWORD-aliniat în fișier și constă din următoarele:

Structura RESOURCEHEADER descrie formatul acest antet. Datele pentru resursa urmează antetul de resurse și este specifică pentru fiecare tip de resurse. Unele resurse angaja, de asemenea, o structură de antet grup de resurse-specifice pentru a oferi informații despre un grup de resurse.

Un tabel de accelera?ie este o resursă intrare într-un fișier de resurse. Nu are un antet de grup. O ACCELTABLEENTRY structura descrie fiecare intrare în tabelul de accelera?ie. Mai multe tabele accelerator sunt permise.

O casetă de dialog este, de asemenea, o resursă intrare în fișierul de resurse. El constă dintr-o DLGTEMPLATE de dialog caseta antet structura plus o DLGITEMTEMPLATE structura pentru fiecare control în caseta de dialog. DLGTEMPLATEEX și DLGITEMTEMPLATEEX structurile descrie formatul resurselor caseta de dialog extins.

Fonturi sunt stocate în fișierul de resurse ca un grup de resurse. Fonturi individuale formează un grup de font. A FONTdeclarație resurse definition declarație în.Fișier RC definește fiecare font. Fiecare font individuale în resursa constă din conținutul complet conexe.Fișier FNT. O structura FONTGROUPHDR urmează toate componentele individuale de font în.Fișier RES.

Font resurse nu sunt adăugate la resursele de o aplica?ie specifică. În schimb, în mod normal sunt adăugate la fișiere executabile, care au o.FON prelungire. Aceste fișiere sunt doar de obicei resurse biblioteci cu legare dinamică (dll) mai degrabă decât aplicații.

Sistemul tratează fiecare pictogramă și cursorul ca un singur fișier. Cu toate acestea, acestea sunt stocate în.RES fișierele în fișiere executabile ca un grup de resurse pictograma sau un grup de resurse cursorul. Formatele de fișier pictogramă și cursorul resurselor sunt similare. În.RES Fișier un antet de grup resursa urmează tuturor componentelor individuale pictograma sau cursorul grup.

Formatul fiecărui component pictograma strâns seamănă cu formatul.Fișier ICO. Fiecare imaginea pictogramă este stocat într-o BITMAPINFO structura urmată de culoare bitmap independent de dispozitiv (DIB) biți de pictograma lui XOR masca. Monocrom DIB biți de pictograma de mască și urmați de biți de culoare DIB.

Formatul fiecărui component cursorul se aseamănă cu formatul.CUR fișier. Fiecare imagine cursorul este stocat într-o structură BITMAPINFO urmat de biți bitmap monocrome independente de dispozitiv (DIB) a lui cursorul XOR masca, apoi de biți DIB monocrome lui cursorului și masca. Rețineți că există o diferență în bitmap-uri resurselor două: spre deosebire de icoane, cursorul XOR măști nu au culoare DIB biți. Deși bitmap de măști cursorul sunt monocrom și nu au anteturi DIB sau tabele de culori, biți sunt încă în format DIB cu privire la alinierea și direcția. O altă diferen?ă importantă între cursors și de icoane este că cursoare au un hotspot și pictogramele nu.

Antetul de grup pentru resurse și pictograma cursorului constă dintr-o NEWHEADER structura plus unul sau mai multe structuri de RESDIR . Acolo este o structură RESDIR pentru fiecare pictogramă sau cursorul. Antetul de grup conține informațiile de o aplicație bazată pe Win32 are nevoie pentru a selecta pictograma corectă sau cursorul pentru a afișa. Antetul de grup și datele care se repetă pentru fiecare pictogramă sau cursorul din grup au o lungime fixă. Acest lucru permite aplicarea la întâmplare de acces la informațiile.

O resursă de meniu dintr-o MENUHEADER structura urmată de una sau mai multe NORMALMENUITEM sau POPUPMENUITEM structuri, una pentru fiecare element de meniu din meniul șablon. MENUEX_TEMPLATE_HEADER și MENUEX_TEMPLATE_ITEM structurile descrie formatul resurselor meniul extins.

Un tabel de mesaj este o resursă care conține text formatat pentru a fi afișate ca un mesaj de eroare sau într-o casetă de mesaj. Structura principală în mesaj tabelul resursă este MESSAGE_RESOURCE_DATA structura.

Structura principală în o resursă versiunea este VS_FIXEDFILEINFO structura. Structuri suplimentare includ VarFileInfo structura pentru a stoca date informații limba, și StringFileInfo pentru informații șir definite de utilizator. Toate șirurile la o resursă versiune sunt în format Unicode pentru Win32-aplicații bazate pe. Fiecare bloc de informații este aliniat pe un DWORD limita.

Pentru o listă de grup a structurilor care descrie formatul de resurse, consultați Structurile de resurse.

Index