Программирование под Windows
Интрефейс WinAPI 32
- Программная организация Windows: модули KERNEL, USE, GDI. Отличия Windows от DOS. Многозадачность и единый интерфейс. Гибкое управление памятью, использование ресурсов, обмен данными между приложениями.
- Инструменты для создания программ в Windows. Borland C++ 5.0, Borland C++ Builder, Borland Delphi, Visual C++. Редакторы ресурсов.
- Функция окна приложения. Цикл сообщений. Простейшее приложение под Windows. Сообщения Windows как основной метод передачи информации. Параметры wParam и lParam.
- Регистрация класса окна и создание окна: RegisterClass, CreateWindow. Типы окон Windows: перекрывающиеся (OverLapped), дочерние (Child), вспомогательные (PopUp).
- Вывод в рабочую область окна. Сообщение WM_PAINT. Обновление изображения.
- Введение в GDI: контекст устройства, инструментарий - карандаш, кисть. Отображение линий и дуг. Отображение заполненных фигур. Рисование битовых изображений.
- Тексты и шрифты.
- Элементы интерфейса Windows: Окно, панель диалога, кнопка, список, строка редактирования, иконка, курсор, графическое изображение.
- Клавиатура. Сообщения драйвера клавиатуры. Кодовые таблицы Windows. Мышь. Сообщения мыши.
- Управление памятью.
- Библиотеки динамической компоновки (DLL).
- Создание меню и таблиц акселераторов.
- Диалоговые окна. Функция диалогового окна. Типы органов управления. Кнопки. Переключатели и радио-кнопки. Полосы прокрутки. Окна-списки.
- Генератор событий (таймер). Другие функции многозадачности.
- Средства обмена данными. Буфер обмена, обмен сообщениями, протокол межзадачного обмена.
- Динамический обмен данными между приложениями DDE.
- Процессы, потоки, синхронизация.
- Консольные приложения.
- Обмен данными через pipe и mailslot.
- Сервисы в Windows NT/2000/XP.
- Атрибуты безопасности в Windows NT/2000/XP.
Примеры, используемые на лекциях
- Первые программы
- Первая программа, оконная функция, обработка WM_PAINT
- Работа с меню, создание акселераторов
- Вывод растрового изображения, системы координат, скроллинг, диалог FileOpen
- Элементы управления
- Элементы управления, создаваемые программой; обработка сообщений от элементов управления
- Главное окно программы диалог. Работа с дочерними окнами.
- Группирование элементов управления в диалоговые панели и работа с ними
- Неоконные приложения Windows
- Загрузка DLL
- Консольное приложение
- Сервисы
- Сервисы для VS 2008
- Управление памятью
- Работа с виртуальной памятью
- Работа с кучей
- Файлы, отображаемые в память
- Процессы, задачи, нити, синхронизация
- Запуск процесса
- События
- Многонитевое приложение
- Мьютексы
- Многодокументное (MDI) приложение
- Многонитевое MDI-приложение
- Многонитевое MDI-приложение с семафорами
- Обмен данными между задачами
- Работа с буфером обмена (Clipboard)
- Обмен сообщениями
- Передача данных через сообщение WM_COPYDATA
- Обмен данными через канал связи (PIPE)
- Обмен данными через Mailslot
- Обмен данными через DDE
- Графический интрефейс
- Координатные системы (doc+prog)
- Построение фрактала
- Работа со шрифтами
- Работа с областями (Regions)
- Режимы рисования
- Проверка монитора (градиент)
- Мультимедиа
- Проигрывание wav-файла
- Использование интерфейса MCI
- Дополнительные разделы
- Работа с файловой системой (doc)
- Работа с реестром
- Создание справочной системы в формате hlp
- Создание панели инструментов, строки статуса
- Просмотр активных окон системы
Полезные программы и справочные руководства
- Итерактивный справочник по функциям и сообщениям WinAPI (258K)
- Руководство по программированию в среде Microsoft Windows (340K)
- Руководство по программированию в среде Microsoft Windows v. 3.0 (591K)
- Школа MFC (1.67M)
- Visual C++ для начинающих (472K)
- Уроки программирования на Visual C++ с помощью MFC (758K)
- Уроки для начинающих (MFC, Visual C++) (783K)
- Borland C++ 5.0 самый простой компилятор, поддерживающий Win32API (67M)
bc50.rar bc50.r00
bc50.r01 bc50.r02
bc50.r03 bc50.r04
bc50.r05 bc50.r06
Программы, иллюстрирующие возможноcти, которыми вы овладеете в процессе обучения
- WinSky 1.1 (212K) – планетарий под Windows, автор А.С.Цветков.
- OpenGL (366K) – иллюстрированный справочник по OpenGL, написанный одним из студентов.
- Common Controls (970K) – иллюстрация общих элементов управления в Windows'95. Автор - студентка факультета С.Смирнова.
Материалы практик 2014-2015 года
- «Жизнь» Конвея
- Использование Mail Slot
- Тест монитора
- Физическое моделирование
- Четырехмерный куб
Рекомендуемая литература
- Литвиненко Н.А. . Технология программирования на C win32 api (2010)
- А. Побегайло . Системное программирование в Windows
- Назарр К., Рихтер Дж. Windows via C&C++. Программирование на языке Visual C++ (2009)
- Ю. Щупак . Win32 API. Эффективная разработка приложений
- А.В.Фролов, А.Г.Фролов. Операционная система Microsoft Windows 3.1 для программиста, в серии Библиотека системного программиста (БСП) тт. 11-13, Москва, Диалог-МИФИ, 1994 г.
- А.В.Фролов, А.Г.Фролов. Графический интерфес в Microsoft Windows, в серии БСП т. 14, Москва, Диалог-МИФИ, 1994 г.
- А.В.Фролов, А.Г.Фролов. Мультимедиа для Windows, в серии БСП т. 15, Москва, Диалог-МИФИ, 1995 г.
- А.В.Фролов, А.Г.Фролов. Операционная система Microsoft Windows 3.1 - дополнительные главы, в серии БСП т. 17, Москва, Диалог-МИФИ, 1995 г.
- А.В.Фролов, А.Г.Фролов. Операционная система Windows 95 для программистов, в серии БСП т. 22, Москва, Диалог-МИФИ, 1995 г.
- А.В.Фролов, А.Г.Фролов. Программирование для Windows NT (в двух частях), в серии БСП тт. 26-27, Москва, Диалог-МИФИ, 1996 г.
- А.В.Фролов, А.Г.Фролов. Microsoft Visual C++ и MFC (в двух частях), в серии БСП тт. 24, 28, Москва, Диалог-МИФИ, 1996 г.
- Н.К.Зыков. Недокументированные возможности Windows 3.0 и 3.1 (справочник для программиста-практика). Москва, Alef Systems, 1993
- П.В.Румянцев. Азбука программирования в Win32 API, Москва, Радио и связь, 1999.
- С.А.Гладков, Г.В.Фролов. Программирование в Microsoft Windows. (в двух частях), "Диалог МИФИ", 1992.
- А.А.Брюзгин. Программный интерфейс для Windows 3.1, Москва, МП Малип, 1994.
- Библиотеки и функции Windows 3.1, справочник программиста, Москва, МП Малип, 1993.
- Windows 3.0 - справочник для программистов (I-II). "Научный центр", Москва, 1992
- Д.А. Сурков, К.А.Сурков, А.Н.Вальвачев. Программирование в среде Borland Pascal для Windows, Вышэйшая школа, 1996.
- А.Федоров, Д.Рогаткин. Borland Pascal в среде Windows. Диалектика, Киев, 1993.
|
|