Математика | ||||
Том Сван Форматы файлов Windows. Пер. с англ. — М.: БИНОМ, 1994 — 288 с.: ил. ISBN 5-7503-0014-5 Эта книга является детальным руководством по многим файлам, поставляемым вместе с Microsoft Windows. Рассматриваются такие типы файлов, как графические растровые изображения (.BMP), курсоры (.CUR), пиктограммы UCO), шрифты (.FNT), файлы редактора Write (.WRI), календарь (.CAL), картотеки (.CRD), группы (.GRP), информационные файлы программ (.PIF), ресурсы, ЕХЕ-файлы и др. Вам также пригодится приводимый краткий обзор приемов обработки файлов и исполь- зования структур языка Си. | ||||
Оглавление ПРЕДИСЛОВИЕ................................ 11 Глава 1 ВВЕДЕНИЕ................................... 12 Программы . . . •................................ 12 Аппаратура................................... 12 Как работать с книгой.............................. 12 Структурные диаграммы файлов....................... 13 Структурные описания файлов......................: . 15 Глава 2 ПРИЕМЫ РАБОТЫ СО СТРУКТУРАМИ ..................... 19 Определение глобальных и автоматических структур.............. 19 Размещение динамических структур....................... 21 Распределение памяти............................ 22 Освобождение памяти............................ 24 Использование указателей.......................... 24 Размещение и удаление структур...................... 25 Использование malloc() и free() ....................... 26 Использование new и delete в Си++..................... 26 Другие функции и макросы ......................... 27 Функция GetFreeSpacef)........................... 27 Функция GlobalCompactQ .......................... 28 Функция GlobalReAllocQ........................... 29 Макрос FIELDOFFSET ............................ 29 Макросы HIBYTE и LOBYTE.......................... 30 Макросы HIWORD и LOWORD ........................ 30 Макрос MAKELONG ............................. 31 Макрос MAKELP............................... 31 Использование структур переменной длины................... 31 Адресация больших структур .......................... 34 Глава 3 ПРИЕМЫ РАБОТЫ С ФАЙЛАМИ........................ 37 Основы обработки файлов............................ 37 Открытие файлов.............................. 37 Закрытие файла............................... 40 Чтение файла................................ 40 Создание нового файла........................... 42 Запись в файл................................ 43 Открытие файла с помощью OpenFile() ................... 44 Другие полезные файловые функции...................... 47 Поиск в файле.................................. 52 Большие файлы................................. 55 Глава 4 ФАЙЛЫ РАСТРОВОЙ ГРАФИКИ (.BMP)..................... SB Формат файла.................................. 58 Интерфейс с языком Си............................. 60 BITMAPFILEHEADER............................. 60 BITMAPINFO................................. 61 \ BITMAPINFOHEADER............................. 62 RGBQUAD.................................. 65 Сжатие растровых изображений......................... 66 Формат сжатия BI_RLE8........................... 66 Формат сжатия BI_RLE4........................... 69 Глава 5 ФАЙЛЫ ПИКТОГРАММ (.ICO).......................... 72 Формат файла.................................. 72 Интерфейс с языком Си............................. 75 JCONHEADER................................. 75 ICONDIRENTRY................................ 76 ICONIMAGE ................................. 78 Как Windows отображает пиктограммы.................... 81 Глава 6 ФАЙЛЫ КУРСОРОВ (.CUR)........................... 84 Формат файла.................................. 84 Интерфейс с языком Си............................. 86 CURSORDIRENTRY.............................. 86 CURSORIMAGE................................ 88 Как Windows отображает курсоры...................... 89 Глава 7 ШРИФТОВЫЕ ФАЙЛЫ (.FNT)..........................91 Интерфейс с языком Си............................. 96 FONTINFO..................................96 FONTHEADER ................................ 96 FONTSPACING................................ 98 FONTSTYLE .................................99 FONTCHAR..................................102 FONTMISC..................................103 Таблица символов шрифта ...........................106 Моноширинные шрифты...........................108 Векторные шрифты .............................110 Неподдерживаемые структуры........................111 Глава 8 МЕТАФАЙЛЫ (.WMF).............................114 Формат файла..................................115 Формат стандартного метафайла......................115 Размещаемый формат метафайла......................116 Интерфейс с языком Си.............................118 Стандартный метафайл: METAHEADER....................118 Размещаемый метафайл: PMETAHEADER ..................119 GDI-записи метафайла.............................120 GDI-функции метафайла...........................121 METARECORD................................123 HANDLETABLE................................124 Создание и использование метафайлов.....................125 Другие метафайловые функции.........................129 CopyMetaFileO................................129 GetMetaFileBits()...............................130 SetMetaFileBitsO...............................130 SetMetaFileBitsBetterO............................131 EnumMetaFileO................................131 PlayMetaFileRecordO.............................132 Глава 9 ФАЙЛЫ КАЛЕНДАРЯ (.CAL)......................... 133 Формат файла.................................. 134 Заголовок файла программы Calendar.................... 135 Массив дескрипторов дат.......................... 136 Массив мероприятий суточного расписания................. 137 APPTINFO.................................. 139 Интерфейс с языком Си............................. 140 CALHEADER................................. 140 DATEINFO.................................. 142 DAYINFO................................... 143 APPTINFO.................................. 144 Глава 10 ФАЙЛЫ КАРТОТЕКИ (.CRD) .........................146 Формат файла.................................. 146 Заголовок.................................. 146 Индекс.................................... 147 Текстовая карточка ............................. 148 Графическая карточка............................ 149 Карточка, содержащая графику и текст................... 150 Интерфейс о языком Си............................. 151 CARDHEADER................................ 151 CARDINDEX................................. 151 TEXTCARD.................................. 152 GRAPHICSCARD............................... 153 TGCARD................................... 154 Глава 11 ФАЙЛЫ ПРОСМОТРЩИКА СИСТЕМНОГО БУФЕРА (.CLP)........... 156 Формат файла..................................156 Заголовок системного буфера........................157 Индекс системного буфера.........................157 Интерфейс с языком Си.............................158 CLIPHEADER.................................159 CLIPINDEX..................................159 Форматы данных системного буфера......................160 Глава 12 ФАЙЛЫ РЕДАКТОРА WINDOWS WRITE (.WRI)................. 164 Формат файлов................................. 164 WRHEADER.................................. 165 WRTEXT................................... 166 WRPICT................................... 167 WROLE.................................... 167 WRFORMAT................................. 169 FOD..................................... 170 FPROP.................................... 171 Формат файла..................................221 OLDHEADER.................................222 EXEHEADER ..................'................223 WINHEADER.................................223 WININFO...................................224 TBSEGMENT.................................226 TBRESOURCE................................226 TBRESNAME.................................227 TBMODULE..................................228 TBENTRY...................................229 TBNONRESNAME...............................229 TBRELOCATIONTABLE............................229 Интерфейс с языком Си.............................230 OLDHEADER.................................231 EXEHEADER.................................232 WINHEADER.................................233 WININFO...................................234 TBSEGMENT.................................239 TBRESOURCE................................240 TBRESNAME.................................244 TBMODULE..................................245 TBIMPNAME.................................245 TBENTRY...................................246 TBNONRESNAME...................,...........248 Сегменты кода и данных.............................248 Глава 16 РЕСУРСЫ ИСПОЛНЯЕМОГО ФАЙЛА (.ЕХЕ)..................251 Формат файла..................................251 Ресурсы растровых изображений......................251 Ресурсы пиктограмм.............................252 Ресурсы курсоров..............................253 Шрифтовые ресурсы.............................254 Ресурсы меню................................255 Ресурсы ускорителей ............................256 Ресурсы диалоговых панелей........................257 Ресурсы таблиц символьных строк......................259 Ресурсы версий...............................260 Интерфейс с языком Си.............................262 Ресурсы растровых изображений (RES_BITMAP)...............262 Ресурсы пиктограмм (RESJCON)......................262 Ресурсы курсоров (RES_CURSOR)......................264 Ресурсы шрифтов (RES_FONT)........................265 Ресурсы меню (RES_ME~NU).........................267 Ресурсы ускорителей (RES_ACCEL)..................... 269 Ресурсы диалоговых панелей (RES_DIALOG).................271 Ресурсы таблиц символьных строк (RES_STRING)..............274 Ресурсы версий (RES_VERSION).......................275 ПРЕДИСЛОВИЕ Эта книга была написана по одной простой причине: мне нужен был удобный справочник по структурам файлов Windows, но не пособие по программированию, а непосредственно сосредоточенный на внутренних деталях таких типов файлов, как пиктограммы, курсоры, шрифты, ресурсы, группы, ЕХЕ-, PIF- и BMP-файлы, файлы редактора Write, календаря, картотеки и др. К сожалению, подобной книги не существовало, а вся информация по этому предмету была опубликована беспорядочно и в сильно несовместимых формах. Поэтому я решил написать свой собственный справочник в едином стиле. Это Форматы файлов Windows — сжатое детальное руководство по большинству файловых типов Microsoft Windows. После кратких наставлений по структурам и по технологии файловой обработки в книге описываются форматы нескольких типов файлов Windows. В каждой главе эти форматы показаны двумя способами: структурными диаграммами, содержащими имя поля, его длину и байтовое смещение, а также как структуры языка Си. Хотя все листинги в книге даны на языке Си, информация пригодна для использования в любых системах разработки программ под Windows, способных читать или записывать дисковые файлы. Чтобы пользоваться данной книгой, желательно немного знать язык Си, но отнюдь не быть Си-гуру. Если вы программируете на таких языках, как Visual BASIC, Turbo Pascal for Windows, то диаграммы файловых структур, приведенные здесь, окажутся особенно полезными для написания программ доступа к файлам Windows. Листинги структур совместимы со всеми компиляторами Си и Си++. В будущих редакциях я надеюсь исследовать большее число файловых типов Windows. Сообщите мне, какой из них вы хотели бы видеть в следующей книге. Вы можете связаться со мной через издательство или через электронную почту. Я с удовольствием выслушаю вас. Цена: 150руб. |
||||