Иллюстрированный самоучитель по Visual Studio .NET

Введение 2
Начало работы с Visual Studio .Net 6
Общий вид Studio .Net 7
Концепция решений и проектов 8
Создание нового проекта 9
Классы приложения 12
Контейнер точек 13
Рисование в контексте устройства 15
Реакция на ошибки 16
Режимы отображения координат 18
Традиционное Windows-приложение 24
Программы, управляемые событиями 25
Прохождение сообщений в системе 26
Структура Windows-приложения 28
Стартовая заготовка приложения Win32 29
Анализ стартовой заготовки 32
Оконная процедура 34
Меню и диалог 35
Развитие начальной заготовки 36
Управление пером Windows 37
Косметическое перо 38
Геометрическое перо 40
Перья на основе растровых изображений 41
Анализатор кодов ошибок 43
Приложение на основе диалога 44
Дизайн диалога. Управление окном Toolbox. 47
Создаем диалог 49
Реакция окна на уведомляющие сообщения 50
Создание и связывание переменных 53
Вставка значка 55
Диалог About. Внесение логики разработчика. 56
Собственные методы класса 58
Поиск в реестре 60
Синтаксический анализ файла 61
Управление файловым деревом 63
Процесс разработки MDI-приложения 64
Настройка стартового кода 65
Список изображений, ассоциируемый с деревом 67
Обращаемся к операционной системе 69
Реакция на уведомляющие сообщения CTreeCTRL 72
Реакция на выбор узла дерева 74
Класс CPolygon 75
Конструкторы и операции 77
Вспомогательные функции 79
Развитие класса документа 80
Документ и его представления 82
Обзор функции Initlnstance 83
Ресурсы шаблона документов 85
Класс для нового представления документа 86
Класс для просмотра изображений 88
Окна с геометрией данных 91
Взаимодействие представлений документа 93
Визуальное редактирование данных 97
Отслеживание состояния команд 101
Тестирование 103
Немодальный диалог 105
Создание и связывание переменных с полями диалога 108
Обработка сообщений от элементов управления 109
Нестандартные кнопки 111
Немодальный режим работы 112
Графика OpenGL 113
Обзор возможностей библиотеки OpenGL. Подключаемые библиотеки. 114
Ограничения Microsoft. Примитивы OpenGL. OpenGL – автомат с конечным числом состояний. 115
Конвейер передачи OpenGL 116
Основные этапы. Анимация. 118
Другие функции OpenGL 119
Контекст передачи изображения 120
Подготовка окна 121
Создание консольного проекта 122
Штриховка линий. Штриховка полигонов. 124
Как убирать внутренние линии 127
Перспективная проекция 128
Вносим свет 131
Интерактивное управление положением и ориентацией 132
Двойная буферизация 133
Использование списков 134
Интерполяция цвета 135
Строим икосаэдр 136
Как создать сферу 139
Выбор способа вычисления нормалей 141
Рекурсивное деление 142
Массивы вершин, нормалей и цветов 144
Создание сферы 145
Трехмерные графики функций 152
Настройка проекта 153
Вспомогательный класс 154
Реакции на сообщения Windows 155
Подготовка окна 156
Реакция на сообщение о перерисовке. Установка цвета фона. 158
Параметры освещения 159
Подготовка изображения 160
График по умолчанию 161
Работа с контейнером 162
Чтение данных 163
Управление изображением с помощью мыши 165
Включаем анимацию 167
Ввод новых команд 168
Диалог по управлению светом 171
От сырых COM API к проекту ATL 178
Модель программирования COM 179
Интерфейсы – основа СОМ-технологии 180
Уникальная идентификация объектов 182
Как работают СОМ-серверы 183
Разработка сервера 184
Создание класса СОМ-объекта 186
Файл описания DLL 188
Разработка клиентского приложения 189
Фабрика классов 190
Независимость от языка 193
Концепция маршалинга 194
Библиотека типов. Новый проект. 196
Использование макросов COM 197
Разработка клиента с использованием специальных указателей 200
Проект на основе ATL 203
Как работает DLL 204
Загадочные макросы 205
Создание элемента типа ATL Control 207
Двойственные интерфейсы 209
Трехмерная графика в проекте ATL 212
Требования OpenGL 213
Введение методов в интерфейс IOpenGL 214
Ручная коррекция класса 215
Введение обработчиков сообщений Windows 219
Управление цветом фона. Подготовка сцены OpenGL. 223
Файловые операции 225
Установка освещения 227
Страницы свойств 229
Конструируем облик страницы свойств 231
Взаимодействие классов 233
Создание контейнера на базе MFC 240
Класс-оболочка 241
Управление с помощью объекта класса-оболочки 243
Из жизни студентов 246
Использование STL 247
Шаблоны 248
Шаблон функции быстрой сортировки 249
Шаблоны классов 251
Контейнеры библиотеки STL. Последовательности типа vector. 255
Поиск с помощью предиката 261
Связыватели и адаптеры 263
Последовательности типа deque 265
Последовательности типа list 266
Ассоциативные контейнеры 268
Контейнер типа set 269
Контейнеры типа map 272
Контейнеры типа hash_multimap 273
Стек – это несложно. Контейнеры типа queue. 274
Контейнеры типа priority_queue 275
Работа с потоками 276
Примеры использования string 277
Полезные константы 278
Шаблон классов valarray 279
Сечения массива 281
Решаем краевую задачу 282
Пример с матрицей 283
Формирование матрицы 286
Метод прогонки. Разработка SDI-приложения. 287
Класс окна для отображения графика 289
Класс графика 291
Конструктор CGraph 293
Преобразование координат 294
Отображение графика 295
Вспомогательная функция 297
Диалог для исследования решений 298
Некоторые сведения об архитектуре Windows 303
Windows – многозадачная операционная система. Уровни и платформы. 304
Однозадачные операционные системы 305
Многозадачные операционные системы 308
Процессы и потоки 309
Приоритеты процессов 311
Приоритеты потоков 312
Переключение потоков 313
Архитектура памяти Win32 315
Разделы адресного пространства 316
Подсистемы ОС. Взаимодействие подсистем. 318
Разделяемые ресурсы 320
Стратегии решения проблемы 321
Транзакции 322
Тупиковая ситуация (Deadlock) 323
Механизмы синхронизации 324
Критические секции 326
Мьютексы (Mutexes) 327
События 328
Семафоры. Блокировки (Locks). 329
Специальные блокировки 330
Устранение тупиковых ситуаций 331