Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Взаимодействие Windows с программой






 

Во многих операционных системах взаимодействие с системой инициирует программа пользователя. Например, в DOS она выполняет запросы к системе при необходимости осуществить ввод/вывод данных. Таким образом, программы, написанные в традиционном стиле, сами обращаются к операционной системе.

Однако Windows работает не так. Именно Windows обращается к Вашей программе. Этот процесс выглядит следующим образом. Программа ожидает сообщения, посылаемого ей Windows. Сообщение передается в программу посредством вызова спе­циальной функции, который также выполняется из Windows. После получения сообщения программа может выполнять некоторые действия. Эти действия могут включать вызов одной или нескольких функций API и именно Windows иниции­рует их. Такое базирующееся на сообщениях взаимодействие программы и опера­ционной системы более чем что-либо другое определяет схему построения всех программ для Windows.

В Windows существует множество различных типов сообщений. Например, каждый раз при щелчке мыши в пределах окна программы ей будет направлено сообщение о нажатии кнопки мыши. Сообщение другого типа посылается программе всякий раз, когда принадлежащее ей окно должно быть перерисовано. Сообщения иного типа приходят, если нажата клавиша на клавиатуре в то время, когда Ваше окно имеет фокус ввода (т.е. ввод с клавиатуры направляется Вашему окну). Твердо запомните: когда программа начинает работать, сообщения к ней приходят неупорядоченным образом, т.е. Вы никогда не знаете, какое сообщение будет следующим. Таким образом, программы для Windows напоминают программы, работающие по прерываниям.

 

2.3. Win32 API: прикладной интерфейс для Windows

 

Каждая программа может получить доступ к ресурсам Windows, используя множество функций Программного Интерфейса Приложений (Application Program Interface, API). API состоит из нескольких сотен функций, которые при необходи­мости могут вызываться из программы. Функции API обеспечивают доступ ко всем ресурсам Windows. Подмножество API, называемое Интерфейс Графических Устройств (Graphics Device Interface, GDI), обеспечивает поддержку независимой от оборудования графики. Именно функции GDI делают возможным работу Windows на весьма разнообразном оборудовании.

Поскольку Windows поддерживает линейную 32-разрядную адресацию, неко­торые типы данных изменили свою размерность: типы int и unsigned стали 32-битными, а не 16-битными, как это было в старых версиях операционной системе Unix. Если Вам понадобится 16-битное целое число, придется определить его как short (как Вы увидите, Windows обеспечивает переносимые типы данных, определенные с помощью typedef). Таким образом, при переносе программ, написанных для 16-разрядной среды, в Windows необходимо тщательно проверять правильность использования переменных типа int и unsigned поскольку они будут автоматически расширены до 32 бит, что может вызвать нежелательные посторонние эффекты.

Другая особенность 32-разрядной адресации состоит в том, что при объявлении указателей не требуется их определение как near или far. В Windows эти типы определены как «пусто». Это означает, что их можно не удалять из текста программы, поскольку эти определения не будут иметь никакого действия.

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.