- •Методические указания
- •Краматорск, дгма, 2013
- •Содержание
- •Лабораторная работа № 1
- •Теоретические сведения
- •Ход работы
- •Индивидуальное задание
- •Литература
- •Лабораторная работа № 2
- •Теоретические сведения
- •Ход работы
- •Индивидуальное задание
- •Лабораторная работа № 3
- •Теоретические сведения
- •Учебный проект для работы с событиями
- •Учебный проект для работы с событиями
- •Ход работы
- •Индивидуальное задание
- •Лабораторная работа № 4
- •Теоретические сведения
- •Учебный проект
- •Ход работы
- •Индивидуальное задание
- •Лабораторная работа № 4
- •Теоретические сведения
- •Учебный проект
- •Ход работы
- •Индивидуальное задание
- •Лабораторная работа № 6
- •Теоретические сведения
- •Учебный проект
- •Ход работы
- •Индивидуальное задание
- •Лабораторная работа № 7
- •Теоретические сведения
- •Ход работы
- •Лабораторная работа № 8
- •Теоретические сведения
- •Атрибуты контекста отображения
- •Цвет фона
- •Режим фона
- •Режим рисования
- •Цвет текста
- •Расстояние между буквами
- •Цветовая палитра
- •Начальные координаты кисти
- •Режим закрашивания многоугольников
- •Текущая позиция пера
- •Изображение bitmap
- •Режим растяжения
- •Область ограничения
- •Режим отображения
- •Начало системы координат для окна
- •Начало системы физических координат
- •Масштаб осей для окна
- •Масштаб осей физических координат
- •Учебный проект
- •Ход работы
- •Лабораторная работа № 9
- •Теоретические сведения
- •Ход работы
- •Лабораторная работа № 10
- •Теоретические сведения
- •Int (*Add)(int); // для адреса функции Add из dll
- •Int (*Sub)(int); // для адреса функции Sub из dll
- •Int *pCount; // для адреса переменной count из dll
- •Ход работы
- •Список рекомендованной литературы
- •Вопросы к экзамену по дисциплине «Операционные системы»
Int (*Add)(int); // для адреса функции Add из dll
Int (*Sub)(int); // для адреса функции Sub из dll
Int *pCount; // для адреса переменной count из dll
// загружаем динамически подключаемую библиотеку
hDll = LoadLibrary("Count.dll");
if (!hDll)
{
cerr << "Load library failed." << endl;
return GetLastError();
}
// настраиваем адрес переменной count из DLL
pCount = (int *)GetProcAddress(hDll, "count");
if (!pCount)
{
cerr << "Get variable address failed." << endl;
return GetLastError();
}
// выводим начальное значение переменной count
cout << "Initial count = " << (*pCount) << endl;
// настраиваем адреса функций
Add = (int (*)(int))GetProcAddress(hDll, "Add");
Sub = (int (*)(int))GetProcAddress(hDll, "Sub");
if (!Add || !Sub)
{
cerr << "Get procedure address failed." << endl;
return GetLastError();
}
// изменяем значение счетчика
cout << "count = " << Add(20) << endl;
cout << "count = " << Sub(15) << endl;
// отключаем библиотеку
if (!FreeLibrary(hDll))
{
cerr << "Free library failed." << endl;
return GetLastError();
}
// выходим из программы
cout << "Press any key to exit.";
cin.get();
return 0;
}
Ход работы
Изучить с помощью лекционного материала, справки и дополнительных материалов описание функций WinAPI для загрузки динамически компонуемых библиотек и вызовов их функций, параметры их вызова, используемые структуры данных и возвращаемые значения.
Включить в состав приложения, разработанного в предыдущих лабораторных работах, библиотеку DLL, куда включить функцию по расчету координат точек кривой, полученной в качестве индивидуального задания. Обеспечить загрузку библиотеки и вызов такой функции.
Выполнить защиту работы, продемонстрировав действующий программный комплекс и прокомментировав преподавателю особенности вызова и использования библиотеки DLL
Отчет по лабораторной работе должен содержать тему, цель, содержание индивидуального задания, листинг программы, скрин-шот результатов работы программы.
Список рекомендованной литературы
Галузевий стандарт вищої освіти України з напряму підготовки 6.050101 «Комп’ютерні науки»: Збірник нормативних документів вищої освіти. – К.: Видавнича група BHV, 2011. – 85 с.
Шеховцов В.А. Операційні системи. – К.: Видавнича група BHV, 2005. – 2005. – 576 с.
Гордеев А.В., Молчанов А.Ю. Системное программное обеспечение. – СПб.: Питер, 2001. – 736 с.
Харт Дж.В. Системное программирование в среде Win32. – М.: Вильямс, 2001. – 464 с.
Бекон Дж., Харрис Т. Операционные системы. – К.: Издат. группа BHV; СПб.: Питер, 2004. – 800 с.
Иртегов Д.В. Введение в операционные системы. – СПб.: БХВ-Петербург, 2002. – 624 с.
Столингс В. Операционные системы. – М.: Вильямс, 2002. – 848 с.
Microsoft Windows 2000 Professional. Учебный курс МCSE. Пер. с англ – 2-е изд., перераб.- М.: Издательско-торговый дом «Русская Редакция, 2001. – 672 с.
Верма Р.Д. Справочник по функциям Win 32 API. – М.: Горячая линия –Телеком, 2002. – 488 c.
