מהו קובץ RES?
הקובץ עם סיומת או סיומת .res יכול להשתייך לקטגוריות רבות של פורמט קבצים. כאן אנו דנים בפורמט קובץ RES שהוא סקריפט משאבים קומפילד של C++; קובץ בינארי שנוצר על ידי Microsoft Resource Compiler (rc) המכיל נתוני משאבים; מבוסס על התוכן של קובץ הגדרת המשאבים; רלוונטי לפרויקט תוכנת האב שלה. קובץ .res בדרך כלל מעוצב מחדש לקובץ אובייקט משאב כדי לקשר אותו לקובץ ההפעלה של יישום.
פורמט קובץ RES
פורמט הקובץ RES שייך ל-Microsoft Resource Compiler (rc). מהדר המשאבים הוא כלי שמרכיב משאבים כגון סמנים, סמלים, תפריטים ותיבות דו-שיח, שהיישום שלך משתמש בהם. לקבצי המשאבים יש בדרך כלל סיומת .res; מכיל משאבים, כגון סמנים, תמונות ומידע על גרסה. קובץ RES יכול להיות קובץ משאבים של 16 או 32 סיביות.
מבנה קובץ משאבים
קובץ משאבים מכיל סדרה של ערכי משאבים שונים. כל ערך מכיל כותרת משאב ונתונים רלוונטיים. כותרת משאב מיושרת בדרך כלל ל-DWORD בקובץ ומכילה את הדברים הבאים:
- DWORD לציון גודל כותרת המשאב
- DWORD לציון גודל נתוני המשאב
- סוג המשאב
- שם המשאב
- מידע נוסף על משאבים
מבנה כותרת המשאב מגדיר את הפורמט של קובץ ה-RES. הנתונים עבור המשאב עוקבים אחר כותרת המשאב. משאבים מסוימים מוסיפים גם תבנית כותרת קבוצתית ספציפית למשאב כדי לספק מידע על קבוצת משאבים. להלן כמה מסוגי הזנת המשאבים ותיאורם:
משאבי טבלת האצה
טבלת מאיץ היא ערך משאב בקובץ RES ללא כותרת קבוצה. דפוס ACCELTABLEENTRY מגדיר כל ערך בטבלת המאיצים. קובץ RES עשוי לכלול טבלאות מאיץ מרובות.
משאבי סמן וסמל
אמנם, המערכת מחשיבה כל אייקון וסמן כקובץ בודד, אך אלה מאוחסנים בקבצי RES כקבוצה של משאבי אייקונים או כקבוצה של משאבי סמן. פורמטי הקבצים של משאבי הסמל והסמן זהים. כותרת קבוצת משאבים עוקבת אחר כל הסמלים הבודדים או רכיבי קבוצת הסמן בקובץ .res.
משאבי תיבת דו-שיח
תיבת דו-שיח מתממשת גם ככניסת משאב בקובץ RES. הוא מכיל תבנית כותרת של תיבת דו-שיח DLGTEMPLATE אחת ותבנית DLGITEMTEMPLATE אחת עבור כל פקד ספציפי בתיבת הדו-שיח. הדפוסים DLGTEMPLATEEX וה-DLGITEMTEMPLATEEX מסבירים את הפורמט של משאבי תיבת דו-שיח מורחבת.
משאבי גופנים
משאב תפריט מכיל דפוס MENUHEADER לאחר מכן דפוס אחד או יותר של NORMALMENUITEM או POPUPMENUITEM, אחד עבור כל פריט תפריט בתבנית התפריט. הדפוסים MENUEX_TEMPLATE_HEADER וה-MENUEX_TEMPLATE_ITEM מסבירים את הפורמט של משאבי תפריט מורחבים.
משאבי טבלת הודעות
טבלת הודעות מורכבת מטקסט מעוצב להצגה כהודעת שגיאה או בתיבת הודעות. הדפוס העיקרי במשאב טבלת הודעות הוא מבנה MESSAGE_RESOURCE_DATA.
משאבי גרסה
הדפוס הראשי במשאב גרסה הוא VS_FIXEDFILEINFO. דפוסים נוספים כוללים את VarFileInfo לאחסון מידע הקשור לשפה, ו-StringFileInfo למידע על מחרוזת מותאמת אישית.