Н.А. Литвиненко | Технология программирования на С++. Win32 API-приложения [2010] [DJVU, PDF]
[Листинги]
Автор: Н.А. Литвиненко
Название: Технология программирования на С++. Win32 API-приложения
Год: 2010
Издательство: СПб, БХВ-Петербург
ISBN: 978-5-9775-0600-7
Отрасль (жанр): Учебное пособие
Формат: DJVU
Качество: OCR с ошибками
Описание:Книга Технология программирования на C++. Win32 API-приложения является учебным пособием по начальному курсу низкоуровневого программирования на C++ для Windows с использованием библиотеки Программного интерфейса приложений (Application Program Interface). Книга предназначена для студентов и преподавателей технических вузов (специальности "Информационные системы", "Информатика и вычислительная техника" и т.п.), а также с успехом может быть использована для самообразования.
Книга включает шесть глав текста с большим количеством практических примеров.
В главе 1 "Интерфейс Windows-приложения" изложены сведения о скелете Windows-приложения, по обработке сообщений, выводу текста и простейшей графике. Глава 2 "Работа с файлами" посвящена вопросам выбора имени файла, назначения шрифта и организации скроллинга. Все это демонстрируется на примере разработки программы - просмотрщика текстовых файлов. Глава 3 "Окна и элементы управления" рассматривает технику создании дочерних и всплывающих окон, а также использование диалоговых окон в качестве контейнеров дли стандартных и общих элементов управления. В главе 4 "Растровая графика" на многочисленных примерах продемонстрирована методика вывода в окно растровых изображений. Здесь же рассмотрены примеры создания виртуальных окон и метафайлов. Глава 5 "Библиотеки динамической компоновки DLL" посвящена технике создания пользовательских динамических библиотек и их использованию при явном и неявном связывании. В главе 6 "Процессы и потоки" рассматриваются порядок создания процессов и потоков, механизмы их синхронизации, объекты ядра и обмен данными между процессами.
Введение 1
Глава 1
Интерфейс Windows-приложения . 3
Каркас Windows-приложения . 4
Исследование каркаса Windows-приложения . 9
Стандартная заготовка Windows-приложения . 15
Обработка сообщений . 21
Нажатие клавиши . 21
Сообщение мыши . 25
Создание окна . 27
Таймер . 27
Рисование в окне . 29
Рисование линии . 29
Прямоугольники, регионы и пути . 46
Прямоугольники . 46
Регионы . 47
Пути . 50
Области отсечения . 52
Вывод текста . 53
Цвет текста и фона . 53
Получение метрики текста . 54
Определение длины строки . 55
Системные шрифты . 56
Определение произвольных шрифтов . 57
Диалог с пользователем . 59
Окно сообщений . 60
Меню . 61
Пример интерактивной графики . 63
Вопросы к главе . 68
Задания для самостоятельной работы . 69
Глава 2
Работа с файлами . 71
Диалог выбора файлов . 71
Простой просмотрщик файлов . 72
Организация скроллинга . 78
Панель инструментов . 85
Выбор шрифтов . 89
Чтение и запись файлов в библиотеке Win32 API . 96
Вопросы к главе . 100
Задания для самостоятельной работы . 101
Глава 3
Окна и элементы управления . 103
Дочерние окна . 104
Всплывающие окна . 109
Диалоговые окна . 116
Тестирование элементов управления . 118
Общие элементы управления 128
Окно редактирования . 134
Строка состояния . 140
Простой текстовый редактор на элементе управления Edit Box Control . 141
Немодальные окна . 148
Стандартное диалоговое окно выбора цвета . 152
Вопросы к главе . 155
Задания для самостоятельной работы . 156
Глава 4 Растровая графика . 157
Функция BitBlt() . 157
Вывод изображения в заданный прямоугольник . 160
Загрузка изображения из файла . 161
Растровые операции . 164
Анимация . 167
Функция PlgBlt() . 172
Функция MaskBlt() . 177
Вращение графического образа . 180
Виртуальное окно . 183
Метафайлы . 187
Создание дискового файла . 190
Растровое изображение в метафайле . 190
Расширенные метафайлы . 192
Вопросы к главе . 196
Задания для самостоятельной работы . 196
Глава 5
Библиотеки динамической компоновки DLL . 197
Создание DLL . 197
Использование DLL . 199
Неявное связывание . 199
DLL общего использования . 202
Явная загрузка DLL . 204
Загрузка ресурсов из DLL . 207
Вопросы к главе . 210
Задания для самостоятельной работы . 210
Глава 6 Процессы и потоки . 211
Создание процесса . 211
Создание потока . 216
Функции C++ для создания и завершения потока . 219
Измерение времени работы потока . 220
Высокоточное измерение времени . 223
Приоритеты потоков . 225
Синхронизация потоков в пользовательском режиме . 228
Interlocked-функции . 228
Критические секции (critical section) . 230
Синхронизация с использованием объектов ядра . 232
Семафоры . 233
События . 238
Мьютексы . 241
Ожидаемые таймеры . 242
Обмен данными между процессами . 247
Разделяемая память для нескольких экземпляров ехе-файла . 247
Файлы, проецируемые в память . 249
Совместный доступ к данным нескольких процессов . 256
Передача данных через сообщение . 260
Вопросы к главе . 264
Задания для самостоятельной работы . 265
Приложение
Поиск окна . 266
Поиск всех окон, зарегистрированных в системе . 266
Поиск главного окна созданного процесса . 268
Литература . 271
Дополнительная литература . 271
Предметный указатель . 272
содержание . 278
Доп. информация:В раздаче книга в двух форматах: djvu и pdf (выбирайте).
Ошибок не так много как можно было бы подумать, но они есть.
На этот случай прилагаются листинги, тоже в двух форматах: txt и doc.
Скриншоты: Время раздачи: 24/7 (круглосуточно)