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


Реєстр Windows та функції API для роботи з ним

Содержание

РЕЄСТР WINDOWS Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.uaУ Microsoft Windows настройка здійснюється через реєстр - механізм, який спрощує зберігання параметрів додатків і службових програм.Реєстр - це централізована ієрархічна база даних, що

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

Слайд 1ЛЕКЦІЯ 4
Реєстр Windows та функції API для роботи з ним.
Засоби

роботи з реєстром в сучасних системах програмування.






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


ЛЕКЦІЯ 4Реєстр Windows та функції API для роботи з ним.Засоби роботи з реєстром в сучасних системах програмування.Операційні

Слайд 2РЕЄСТР WINDOWS

Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua
У Microsoft Windows

настройка здійснюється через реєстр - механізм, який спрощує зберігання параметрів

додатків і службових програм.

Реєстр - це централізована ієрархічна база даних, що складається з декількох файлів (для програмістів, що працюють з ним, він подається як єдина база даних) і володіє наступними можливостями:
Ієрархічна організація даних програми дозволяє зберігати свої параметри довільним чином;
Підтримує багатокористувацьку роботу, він розділений на дві частини, в одній з яких зберігаються параметри локального комп'ютера (HKEY_LOCAL_MACHINE), а в іншій - користувальницькі параметри (HKEY_USERS);
Обмеження доступу до будь-яких розділів реєстру;
Зберігання даних різних типів, у тому числі довічних DWORD, рядків і мультірядків.

Реєстр - обмежений спільний системний ресурс, у різанні з яким потрібно дотримуватися певних правил етикету (або угод), багато з них накладаються самою системою.
РЕЄСТР WINDOWS Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.uaУ Microsoft Windows настройка здійснюється через реєстр - механізм, який

Слайд 3РЕЄСТР WINDOWS

Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua
В основі системного

реєстру лежить ієрархія розділів (ключів) і значень. Розділи (ключі реєстру) можуть

складатися з довільного числа підрозділів (підключей) значень. У свою чергу підрозділи володіють такими ж правами і можуть включати в себе скільки завгодно значень і нових підрозділів. назви розділів одного рівня повинні розрізнятися, крім того, в них не повинна входити зворотна коса риска. Для перегляду реєстру можна використовувати стандартну програму regedit.exe.
РЕЄСТР WINDOWS Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.uaВ основі системного реєстру лежить ієрархія розділів (ключів) і значень.

Слайд 4РОЗДІЛИ СИСТЕМНОГО РЕЄСТРУ WINDOWS 2000, ЩО ВИЗНАЧЕНІ ЗАЗДАЛЕГІДЬ
Операційні системи. Кафедра

Інформатики. E-mail: informatika@kture.kharkov.ua

РОЗДІЛИ СИСТЕМНОГО РЕЄСТРУ WINDOWS 2000, ЩО ВИЗНАЧЕНІ ЗАЗДАЛЕГІДЬОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua

Слайд 5РОЗДІЛИ СИСТЕМНОГО РЕЄСТРУ WINDOWS 2000, ЩО ВИЗНАЧЕНІ ЗАЗДАЛЕГІДЬ
Операційні системи. Кафедра

Інформатики. E-mail: informatika@kture.kharkov.ua

РОЗДІЛИ СИСТЕМНОГО РЕЄСТРУ WINDOWS 2000, ЩО ВИЗНАЧЕНІ ЗАЗДАЛЕГІДЬОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua

Слайд 6АРХІТЕКТУРА ДОСТУПУ ДО ЛІЧИЛЬНИКІВ ПРОДУКТИВНОСТІ(РОЗДІЛ HKEY_PERFORMANCE_DATA)
Операційні системи. Кафедра Інформатики. E-mail:

informatika@kture.kharkov.ua

АРХІТЕКТУРА ДОСТУПУ ДО ЛІЧИЛЬНИКІВ ПРОДУКТИВНОСТІ(РОЗДІЛ HKEY_PERFORMANCE_DATA)Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua

Слайд 7ТИПИ ДАНИХ ЗНАЧЕНЬ РЕЄСТРУ(ПОВНИЙ СПИСОК ТИПІВ ДАНИХ, ЯКІ ПІДТРИМУЄ WINDOWS

2000)
Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua

ТИПИ ДАНИХ ЗНАЧЕНЬ РЕЄСТРУ(ПОВНИЙ СПИСОК ТИПІВ ДАНИХ, ЯКІ ПІДТРИМУЄ WINDOWS 2000)Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua

Слайд 8ТИПИ ДАНИХ ЗНАЧЕНЬ РЕЄСТРУ(ПОВНИЙ СПИСОК ТИПІВ ДАНИХ, ЯКІ ПІДТРИМУЄ WINDOWS

2000)
Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua

ТИПИ ДАНИХ ЗНАЧЕНЬ РЕЄСТРУ(ПОВНИЙ СПИСОК ТИПІВ ДАНИХ, ЯКІ ПІДТРИМУЄ WINDOWS 2000)Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua

Слайд 9УГОДА ПО РОБОТІ З РЕЄСТРОМ
Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua
Параметри

реєстру, специфічні для комп'ютера. Існує угода, відповідно до якої програми

та службові програми зберігають дані, специфічні для конфігурації виконуючого їх комп'ютера, в такій ієрархії розділів:

HKEY_LOCAL_MACHINE Software Company Name Your Product Name Your Product Version (optional)       Key1           Value1           Value2       Key2
УГОДА ПО РОБОТІ З РЕЄСТРОМОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.uaПараметри реєстру, специфічні для комп'ютера. Існує угода, відповідно

Слайд 10УГОДА ПО РОБОТІ З РЕЄСТРОМ
Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua
Параметри

реєстру, специфічні для користувача. Підрозділи розділу HKEY_USERS містять відомості про

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

HKEY_CURRENT_USER
Software
Your Company Name
Your Product Name
Your Product Version (optional)
Key1
Value1
Value2
Key2

УГОДА ПО РОБОТІ З РЕЄСТРОМОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.uaПараметри реєстру, специфічні для користувача. Підрозділи розділу HKEY_USERS

Слайд 11УГОДА ПО РОБОТІ З РЕЄСТРОМ
Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua
Дескриптор

ключа (підрозділу) (key handle) зберігається у змінній типу HKEY. Щоб

отримати дескриптор ключа HKEY, необхідно використовувати функції RegOpenKeyEx або RegCreateKeyEx. Перший аргумент цих функцій має тип HKEY. При виклику будь-якої з цих функцій в якості першого аргументу можна вказати константу, наприклад ім'я одного з кореневих ключів реєстру (наприклад, HKEY_CLASSES_ROOT). Windows дозволяє скористатися декількома константами типу HKEY, які за умовчанням є відкритими. Цими константами є:
HKEY_CLASSES_ROOT HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE HKEY_USERS HKEY_CURRENT_CONFIG HKEY_DYN_DATA Ці константи відповідають кореневим ключам реєстру.
УГОДА ПО РОБОТІ З РЕЄСТРОМОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.uaДескриптор ключа (підрозділу) (key handle) зберігається у змінній

Слайд 12ДЕЯКІ(ЧАСТО ВИКОРИСТОВУВАНІ) ФУНКЦІЇ API ДЛЯ РОБОТИ З РЕЄСТРОМ
Операційні системи. Кафедра

Інформатики. E-mail: informatika@kture.kharkov.ua

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

Слайд 13ДЕЯКІ(ЧАСТО ВИКОРИСТОВУВАНІ) ФУНКЦІЇ API ДЛЯ РОБОТИ З РЕЄСТРОМ
Операційні системи. Кафедра

Інформатики. E-mail: informatika@kture.kharkov.ua

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

Слайд 14ПРИКЛАД РОБОТИ З РЕЄСТРОМ
Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua
Приклад роботи

з реєстром виконує перелік вмісту ключа реєстру HKEY_CURRENT_USER \ Software.

Робота з реєстром реалізована з використанням виключно API функцій, але в цілому дану функцію можна буде застосувати тільки в додатках ATL або MFC, в зв'язку з використанням класу CString. Функція переліку вмісту ключа реєстру HKEY_CURRENT_USER \ Software

void RegReadSample (CString &strResult)
{
TCHAR szBuff[MAX_PATH];
DWORD dwBSize = MAX_PATH, dwIndex = 0;
HKEY hKey = 0;
LONG lResult = 0;
FILETIME ft;
lResult = ::RegOpenKeyEx(HKEY_CURRENT_USER, _T("software"),0, KEY_ENUMERATE_SUB_KEYS,&hKey);
if(lResult==ERROR_SUCCESS)
{
while(lResult==ERROR_SUCCESS)
{
lResult=::RegEnumKeyEx(hKey,dwIndex,szBuff,&dwBSize,0,0,0,&ft);
if(lResult==ERROR_SUCCESS)
{
dwIndex++;dwBSize = MAX_PATH;
strResult += (CString(szBuff)+_T("\r\n"));
}
}
}
UpdateData(0);

}

ПРИКЛАД РОБОТИ З РЕЄСТРОМОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.uaПриклад роботи з реєстром виконує перелік вмісту ключа реєстру

Слайд 15РОБОТА З РЕЄСТРОМ
Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua
Зауваження. Дуже важливо

при роботі з реєстром пам'ятати про особливості функції RegDeleteKey. При

виклику цієї функції необхідно обов'язково перевіряти параметр, що передається в цю функцію, на наявність в ньому інформації. Цей параметр не повинен бути порожнім, інакше операційна система може бути дуже серйозно пошкоджена, особливо, якщо це Windows 98.

У разі успішного виконання функцій RegOpenKeyEx, RegEnumKeyEx, повертається значення ERROR_SUCCESS. При виконанні функції RegOpenKeyEx використан параметр KEY_ENUMERATE_SUB_KEYS, який вказує тип маски доступу до ключів реєстру. Вказане значення не єдине. Всі можливі значення цього параметра наведені в таблиці.

РОБОТА З РЕЄСТРОМОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.uaЗауваження. Дуже важливо при роботі з реєстром пам'ятати про особливості

Слайд 16РОБОТА З РЕЄСТРОМ
Операційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua

При роботі з

реєстром необхідно пам'ятати, що доступ до реєстру в цілому і

до його ключів зокрема регулюється правами користувача, профіль якого активний в даний момент на комп'ютері. Це стосується операційних систем сімейства Windows NT, а в ОС Windows 98/Me ці обмеження не діють. Облік прав користувача вкрай важливий, оскільки програми, що працюють з реєстром можуть не мати доступу до тих чи інших ключів в залежності від прав користувача. Повний доступ до реєстру мають програми, що запускаються в режимі адміністратора або користувачів з правами адміністратора.
РОБОТА З РЕЄСТРОМОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.uaПри роботі з реєстром необхідно пам'ятати, що доступ до реєстру

Слайд 17ЗНАЧЕННЯ ТИПІВ ДОСТУПУ ДО КЛЮЧІВ РЕЄСТРУ
Операційні системи. Кафедра Інформатики. E-mail:

informatika@kture.kharkov.ua

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

Слайд 18ЗНАЧЕННЯ ТИПІВ ДОСТУПУ ДО КЛЮЧІВ РЕЄСТРУ
Операційні системи. Кафедра Інформатики. E-mail:

informatika@kture.kharkov.ua

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

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

informatika@kture.kharkov.ua
Для модифікації (додавання) великої кількості даних в реєстр можна використовувати

REG-файли. Це файли, про які згадувалося при описі функції LoadKey. REG-файли - це прості текстові ASCII-файли з інформацією про вміст реєстру. REG-файл можна створити з використанням програми REGEDIT за допомогою пункту меню Export цієї програми. Також REG-файл можна створити самостійно, за допомогою будь-якого текстового редактора. Приклад такого файлу наводиться нижче:

Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\MyProgram\1.0]
[HKEY_CURRENT_USER\Software\MyProgram\1.0\Current]
"Parametr1"=dword:00000001
[HKEY_CURRENT_USER\Software\MyProgram\1.0\Current\Start]
"ProgramStart"=hex:00,00,00,00
"DefaultPath"="C:\\Program Files\\MyProgram"
@="C:\\Program Files\\MyProgram\\Database"

МОДИФІКАЦІЯ РЕЄСТРУ З ВИКОРИСТАННЯМ REG ФАЙЛАОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua	Для модифікації (додавання) великої кількості даних в

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

informatika@kture.kharkov.ua
Такий REG-файл можна використовувати для внесення інформації до реєстру за

допомогою функції LoadKey або шляхом запуску цього файлу з програми Windows Explorer.

У першому рядку файлу міститься рядок, який вказує на версію програми REGEDIT, за допомогою якої був створений даний файл. При створенні власного REG-файлу за допомогою текстового редактора, необхідно помістити це ключове слово на початку файлу. Структура файлу наступна. Після першого рядка розміщується ім'я ключа в квадратних дужках, потім можна розмістити одну або кілька пар ім'я / значення. Знак @ позначає значення ключа за замовчуванням. Імена та значення повинні бути поміщені в лапки за винятком символу «?», Який відповідає значенню за замовчуванням. Замість символу «\» слід використовувати «\ \» (два поспіль символу). В кінці файлу слід додати порожній рядок, інакше REGEDIT може проігнорувати останній рядок файлу.
МОДИФІКАЦІЯ РЕЄСТРУ З ВИКОРИСТАННЯМ REG ФАЙЛАОпераційні системи. Кафедра Інформатики. E-mail: informatika@kture.kharkov.ua	Такий REG-файл можна використовувати для внесення інформації

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

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

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

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

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


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

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