Система Orphus

Windows 2000 API

Энциклопедия программиста

Автор: Саймон Ричард
Издательство: "DiaSoft", 2002
1088 страниц

Материал предоставил: Михаил Голованов
Найти в магазинах

Аннотация

Содержание
Комментарии

Аннотация

Операционные системы (ОС) Windows 98 и Windows 2000 перевели на совершенно новый качественный уровень методологию разработки прикладных приложений, которые выполняются под управлением этих ОС. Несмотря на изобилие мощных инструментальных средств создания программ, знание интерфейса программирования прикладных приложений (API) - основы всех основ - вот ключ к написанию программ, могущих занять достойное положение на рынке.
Издание представляет собой исчерпывающее учебно-справочное руководство по всем аспектам API, которое должно стать настольной книгой программистов всех категорий и направлений. Полнота изложения материала, изобилие удачно подобранных примеров, эффективная организация книги превращают ее в настоящую энциклопедию программиста.
В книге подробно рассматриваются вопросы низкоуровневой обработки сообщений, использование ресурсов всех категорий, управление памятью, применение интерфейса графических устройств (GDI), работа с файлами, вводом/выводом, системным реестром, организация обработки ошибок и многое другое.
Сопровождающий CD-ROM окажет существенную помощь в использовании материала книги.
Для начинающих, опытных и профессиональных программистов.

Содержание

Глава 1. Программирование в системе Windows2000
Средства пользовательского интерфейса
Минимальные требования
Руководство по стилю
Окна
Меню
Ввод и элементы управления
Визуальное проектирование
Системная интеграция
Глава 2. API Win32
Преимущества Win32
Типовая программа
Глава 3. Создание окон
Создание главного окна
Создание окон с использованием существующих классов
Сообщения, вырабатываемые при создании окон
Описание функций создания окон
Глава 4. Функции поддержки окон
Данные класса окна
Присоединение данных к окну
Изменение внешнего вида окон
Описание функций поддержки окон
Глава 5. Обработка сообщений
Поток сообщений
Обработка сообщений
Источники сообщений
Реентерабельные функции
Функции перехвата сообщений
Описание функций обработки сообщений
Глава 6. Меню
Главные меню и всплывающие меню
Создание меню в файле ресурса
Добавление меню к окну приложения
Внесение изменений в меню
Сообщения меню
Функции поддержки меню
Глава 7. Ресурсы
Файл описания ресурсов
Таблицы строк
Ресурсы, определяемые пользователем
Описание функций поддержки ресурсов
Глава 8. Диалоговые окна
Типы диалоговых окон
Клавиатурный интерфейс диалогового окна
Динамические диалоговые окна
Описания операторов шаблона диалогового окна
Операторы элементов управления диалогового окна
Описания функций диалогового окна
Глава 9. Функции ввода
Сообщения мыши
Сообщения клавиатуры
Виртуальные клавиши
Описания функций пользовательского ввода
Глава 10. Линейки прокрутки
Основные сведения о линейках прокрутки
Позиция и диапазон линейки прокрутки
Сообщения линейки прокрутки
Описания функций линейки прокрутки
Глава 11. Управление памятью
Архитектура памяти
Глобальная память
Виртуальная память
Куча
Описания функций управления памятью
Глава 12. Интерфейс графических устройств
Контекст устройства
Ввод объектов в контекст устройства
Приватные контексты устройств
Установки начала координат и экстенты
Описания функций GDI
Глава 13. Растровые изображения, пиктограммы и метафайлы
Растровые изображения
Использование растровых изображений DDB
Использование растровых изображений DIB
Пиктограммы
Использование пиктограмм
Создание пиктограммы во время выполнения
Метафайлы
Создание и воспроизведение метафайла
Метафайлы в файле на диске
Описания функций для работы с растровыми изображениями, пиктограммами и метафайлами
Глава 14. Печать и вывод текста
Поддержка принтера
Информация о принтере
Характеристики вывода текста
Описания функций печати и вывода текста
Глава 15. Рисование и черчение
Перья, кисти и другие логические элементы
Определение области вывода
Объявление области недействительной, отсечение и сообщение WM_PAINT
Описания функций рисования и черчения
Глава 16. Палитры и согласование цветов
Аппаратные палитры
Цветовые палитры в системе Windows
Логическая палитра
Согласование цветов изображения
Цветовые пространства
Цветовой профиль
Функции управления палитрой и согласования цветов
Глава 17. Ввод / вывод файлов
Создание и открытие файлов
Чтение и запись
Совместное использование данных с применением отображения файла
Функции ввода / вывода файлов
Глава 18. Буфер обмена
Форматы буфера обмена
Управление данными буфера обмена в среде Windows
Воспроизведение данных буфера обмена с задержкой
Формат CF_OWNERDISPLAY
Использование приватных форматов буфера обмена
Окна просмотра буфера обмена
Описание функций буфера обмена
Глава 19. Системный реестр
Архитектура системного реестра
Размещение данных в системном реестре
Описания функций системного реестра
Глава 20. Файлы инициализации
Структура файла инициализации
Доступ к файлам инициализации
Отображение приватных INI-файлов
Описания функций файлов инициализации
Глава 21. Системная информация
Информация о среде выполнения процесса
Местное и системное время
Поддержка региональной установки и языка
Описание функций системной информации
Глава 22. Манипулирование строками и преобразование наборов символов
Преобразование наборов символов в Windows
Региональные установки
Описание функций манипулирования строками и преобразования наборов символов
Глава 23. Атомы
Как работать с таблицами атомов
Применение глобальных атомов для обмена данными
Целочисленные атомы
Описание функций управления атомами
Глава 24. Таймеры
Применение таймеров
Время Windows
Счетчики монитора производительности
Описание функций таймеров
Глава 25. Процессы, нити и волокна
Создание процессов и нитей
Волокна
Объекты синхронизации
Защита процесса от нереентерабельного кода
Описание функций управления процессами, нитями и волокнами
Глава 26. Обработка ошибок и исключений
Создание обработчиков исключений и фильтров
Win32 API для обработки исключений
Описание функций обработки ошибок и исключений
Глава 27. Многооконный интерфейс
Создание MDI-приложения
Главное окно MDI
Дочернее окно MDI
Меню в MDI-приложениях
Описание функций и сообщений MDI
Глава 28. Взаимодействие со справочными файлами
Предоставление пользователю доступа к справочному файлу
Контекстно-зависимая справка
Обучающие иллюстрации
Функции справочных файлов и описания сообщений
Глава 29. Декомпрессия и установка файлов
Обзор процесса установки файлов
Проверка устанавливаемой версии
Информация о версии
Декомпрессия файлов
Описание функций декомпрессии и установки файлов
Глава 30. Динамически компонуемые библиотеки
Динамическое связывание во время загрузки
Динамическое связывание во время выполнения
Создание динамически компонуемых библиотек
Доступ к данным в DLL
Использование уведомляющей точки входа в DLL
Описание функций динамически компонуемых библиотек
Что на CD-ROM?
Предметный указатель

Комментарии

Михаил Голованов

Книга, как и заявлено, представляет собой справочник по функциям Windows 2000 API. В книге описаны API для работы с окнами, сообщениями, меню, ресурсами, файлами, памятью и многое другое. Я не нашел в данной книге описания функций для работы с локальными сетями, OLE, COM. На мой взгляд, данная книга - это качественно переведенные статьи из MSDN c описанием основной части Windows API. Однако, при наличии доступа к Internet и знания английского необходимость в такой книге резко снижается. Книга может быть полезна прикладным программистам, как справочник, при необходимости изучить внутреннее устройство какой-либо библиотеки, реализующей высокоуровневые средства работы с объектами Windows.

Игорь Вартанов

Данная книга по сути своей представляет справочник по функциям и структурам Windows 2000 API, точнее по некоторому его подмножеству. Наиболее полно охвачены темы работы с окнами верхнего уровня (в том числе с MDI-окнами и диалогами), интерфейсом графических устройств (GDI), и ряд системных вопросов, таких как работа с объектами ядра, управление памятью, ввод-вывод, системный реестр. Каждая из тридцати глав книги представляет собой обзор определенной темы: в самом начале преподносятся общие понятия, относящиеся к теме, рассматриваются вопросы архитектуры Windows, относящиеся к данной теме и более подробный разбор подтем, иллюстрированный диаграммами и фрагментами кода. В конце каждой главы помещается справочник по функциям и структурам API в алфавитном порядке. И именно справочный материал занимает львиную долю объема этой 1085-страничной книги.

Несмотря на кажущееся сходство, справочный материал книги не является компиляцией текстов из MSDN Library. Это и хорошо, и плохо. Хорошо для тех мест, где автор приводит более подробное рассмотрение и более полные практические рекомендации по сравнению с материалами Microsoft, плохо там, где наблюдается обратная картина.

Несомненным достоинством книги является богатый демонстрационный материал: прилагаемый компакт-диск содержит более трех сотен примеров (342 проекта, если быть точным), представляющих использование Windows 2000 API на практике. Каждый пример - это законченное Win32-приложение, написанное без применения каких бы то ни было библиотек, - то, что среди программистов называется "голый API". Опять-таки, исходные тексты имеют и хорошие, и плохие стороны: примеры из книги максимально упрощены, и нацелены на демонстрацию работы отдельных функций API, в то время как примеры из MSDN никогда до подобного не опускаются, включая в себя демонстрацию применения многих функций одновременно.

На мой взгляд, наибольшую пользу данная книга принесет начинающим Windows-программистам, особенно если использовать ее, как дополнение к книге Чарлза Петзолда "Программирование для Windows" (C.Petzold "Programming Windows"), практически к любому из ее изданий.

К сожалению, несмотря на название, книга вовсе не рассматривает совершенно естественные для Windows 2000 вопросы программирования сетевых приложений, сервисов, безопасности, COM/OLE, мультимедиа. Объяснений этому можно придумать много - начиная с того, что будь эти вопросы рассмотрены, книга имела бы вдвое больший объем. Но совершенно необъясним тот факт, что в книге ни словом не упомянуто о стандартных и так называемых "общих" элементах управления, с давних пор ставших неотъемлемой частью Windows.

Отдельного доброго слова стоит качественный и технически верный перевод на русский язык - мне не пришлось ни разу пожалеть о том, что я читаю не оригинальное издание.