Разделы презентаций


Система повідомлень ОС Windows

Содержание

СИСТЕМА ПОВІДОМЛЕНЬ ОС WINDOWSОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.uaОбробка повідомлень лежить в основі роботи ОС сімейства Windows, а також додатків, що працюють під їх управлінням. Система і додатки виробляють повідомлення у

Слайды и текст этой презентации

Слайд 1ЛЕКЦІЯ 6

Система повідомлень ОС Windows










Операційні системи
доц. Сінельнікова Т.Ф.

ЛЕКЦІЯ 6Система повідомлень ОС WindowsОпераційні системидоц. Сінельнікова Т.Ф.

Слайд 2СИСТЕМА ПОВІДОМЛЕНЬ ОС WINDOWS
Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua
Обробка повідомлень

лежить в основі роботи ОС сімейства Windows, а також додатків,

що працюють під їх управлінням. Система і додатки виробляють повідомлення у відповідь на кожну подію, що відбувається в Windows. Повідомлення дозволяють Windows виконувати кілька додатків одночасно. У системах Windows 95 і в ОС сімейства Windows NT кожен потік або процес отримує свою власну чергу повідомлень, що дозволяє їм працювати незалежно. У більш ранніх версіях Windows всі програми поділяли одну чергу повідомлень. У цих версіях Windows-додаток повинен був повертати управління Windows якомога швидше, щоб дати можливість іншим програмам обробляти повідомлення.
СИСТЕМА ПОВІДОМЛЕНЬ ОС WINDOWSОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.uaОбробка повідомлень лежить в основі роботи ОС сімейства Windows,

Слайд 3СИСТЕМА ПОВІДОМЛЕНЬ ОС WINDOWS
Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua
Основою механізму

повідомлень ОС Windows є потік повідомлень. Windows виробляє повідомлення у

відповідь на кожну апаратну подію, таке як натискання користувачем клавіші на клавіатурі або переміщення миші. Система передає ці повідомлення у відповідну чергу повідомлень потоку. Кожен потік в системі обробляє повідомлення у власній черзі повідомлень. Якщо повідомлення призначене для конкретного потоку, воно поміщається в чергу повідомлень цього потоку. Деякі повідомлення відносяться до всієї системи або призначені для декількох потоків. Ці повідомлення поміщаються в чергу відповідних потоків. Повідомлення це структура даних, яка визначена наступним чином:

СИСТЕМА ПОВІДОМЛЕНЬ ОС WINDOWSОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.uaОсновою механізму повідомлень ОС Windows є потік повідомлень. Windows

Слайд 4СИСТЕМА ПОВІДОМЛЕНЬ ОС WINDOWS
Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua

typedef struct

tagMSG {
HWND hwnd; /* дескриптор окна */
UINT message; /* идентификатор

сообщения */
WPARAM wParam; /* значение wParam */
LPARAM IParam; /* значение IParam */
DWORD time; /* число миллисекунд с момента запуска */
POINT pt; /* положение курсора мыши в экранных координатах */
} MSG;

Дані повідомлення містять дескриптор вікна (hwnd), закодований тип повідомлення (message), дані wParam і lParam, які будуть передані функції головного вікна програми, позначку часу відправлення повідомлення time (в мілісекундах після запуску Windows) і структуру POINT (pt), що містить координати х і у курсора миші під час відправки повідомлення.

СИСТЕМА ПОВІДОМЛЕНЬ ОС WINDOWSОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.uatypedef struct tagMSG {HWND  hwnd;	/* дескриптор окна */UINT

Слайд 5СИСТЕМА ПОВІДОМЛЕНЬ ОС WINDOWS
Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua
На малюнку

показана спрощена схема для одного потоку повідомлень і для одного

повідомлення, що проходить через процедуру обробки повідомлення даного потоку. Для інших потоків цей процес відбувається аналогічно.

СИСТЕМА ПОВІДОМЛЕНЬ ОС WINDOWSОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.uaНа малюнку показана спрощена схема для одного потоку повідомлень

Слайд 6СИСТЕМА ПОВІДОМЛЕНЬ ОС WINDOWS
Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua
Повідомлення з'являються

не тільки при виникненні апаратних подій (натискання на клавіатурі клавіши

або рух миші). Часто повідомлення використовуються для управління програмою або відправлення будь-якої інформації іншим програмам. Потоки можуть обмінюватися даними, відправляючи одне одному повідомлення. Повідомлення можуть поміщатися в чергу з використанням функції PostMessage (це називається виставленням повідомлення) або за допомогою функції SendMessage відправлятися прямо в чергу повідомлення для негайної обробки.
СИСТЕМА ПОВІДОМЛЕНЬ ОС WINDOWSОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.uaПовідомлення з'являються не тільки при виникненні апаратних подій (натискання

Слайд 7СИСТЕМА ПОВІДОМЛЕНЬ ОС WINDOWS
Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua
Також можна

здійснювати відправлення повідомлень між програмами. В ОС Windows передбачена функція

RegisterWindowMessage, що дозволяє динамічно виробляти унікальні ідентифікатори повідомлень. Ці ідентифікатори отримують такі послідовні номери, щоб вони не збігалися з номерами повідомлень, що застосовані в програмах з іншого набору програм. Стандартний спосіб обміну даними між програмами полягає у використанні динамічного обміну даними (DDE - dynamic data exchange). DDE - це ряд повідомлень, які визначені для використання в якості стандарту зв'язку.
СИСТЕМА ПОВІДОМЛЕНЬ ОС WINDOWSОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.uaТакож можна здійснювати відправлення повідомлень між програмами. В ОС

Слайд 8ДЕЯКІ ФУНКЦІЇ ДЛЯ РОБОТИ З ПОВІДОМЛЕННЯМИ
Операційні системи. Кафедра Інформатики. E-mail:

informatika@kture.kharkov.ua

ДЕЯКІ ФУНКЦІЇ ДЛЯ РОБОТИ З ПОВІДОМЛЕННЯМИОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua

Слайд 9ДЕЯКІ ФУНКЦІЇ ДЛЯ РОБОТИ З ПОВІДОМЛЕННЯМИ
Операційні системи. Кафедра Інформатики. E-mail:

informatika@kture.kharkov.ua

ДЕЯКІ ФУНКЦІЇ ДЛЯ РОБОТИ З ПОВІДОМЛЕННЯМИОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua

Слайд 10ПРИКЛАД ПРОГРАМИ
Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua
Приклад, який демонструє застосування

функцій SendMessage, GetMessage, TranslateMessage, DispatchMessage, розглянемо програму MsgDemo, яка здійснює

відправку повідомлень з головного вікна програми іншого вікна, і ці повідомлення управляють другим вікном. Друге вікно отримує ці повідомлення, обробляє їх і виконує дії, які повинні виконуватися при отриманні відповідних повідомлень.
ПРИКЛАД ПРОГРАМИОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.uaПриклад, який демонструє застосування функцій SendMessage, GetMessage, TranslateMessage, DispatchMessage, розглянемо програму

Слайд 11ПРИКЛАД ПРОГРАМИ
Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua
На головному вікні програми

розташовані кнопки Close, Maximize, Minimize, Send Custom Message. Натискання на

кнопки Close, Maximize, Minimize ініціює відправку повідомлення в інше вікно, яке їх обробляє і здійснює відповідну дію - закривається, максимізується, мінімізується. Кнопка Send Custom Message дозволяє відправити довільне повідомлення, яке набирається в рядку під кнопками замість напису "My message text". Також текст цього повідомлення відображається і нижче для показу, що повідомлення надіслано. Друге вікно при отриманні такого повідомлення відображає його текст разом з іншими повідомленнями, які йому надійшли.

Вихідний код програми приведений в навчальному посібнику.
ПРИКЛАД ПРОГРАМИОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.uaНа головному вікні програми розташовані кнопки Close, Maximize, Minimize, Send Custom

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика