Администрирования прикладного программного обеспечения ИПЗ. Белкин_ипз. Лабораторная работа 2 Разработка модели условнобесплатной программы фио студента
Скачать 1.81 Mb.
|
ИТОГОВОЕ ПРАКТИЧЕСКОЕ ЗАДАНИЕ по дисциплине «Администрирование прикладного программного обеспечения» Лабораторная работа 2-3. Разработка модели условно-бесплатной программы
Москва 2022 ЛАБОРАТОРНАЯ РАБОТА № 2-3 1. В MS Visual Studio на основе шаблона «Приложение Windows Forms (.NET Framework)» создайте новый проект с именем RegistryWork (с сохранением всех файлов проекта в одноименной папке): Рисунок 1. Создание проекта 2. Измените свойства экранной формы Form1: Form1.Name = frmRegistryWork Form1.Text = Работа с реестром 3. Разработайте инструментарий создания в разделе реестра HKEY_CURRENT_USER следующей структуры ключей: Для этого добавьте на форму элемент Button, установите его свойства Name = btnCreateKey и Text = Создание ключей в HKCU, а также добавьте команды создания ключей в обработчик нажатия этой кнопки: 4. Разработайте инструментарий для создания в ключе Lecture строковых параметров с именем «Лекция 1» и значением «Установка ПО» и «Лекция 2» со значением «Лицензирование ПО», а в ключе Practice – параметр типа dword с именем «Result» и значением 15. Для этого добавьте на форму еще один элемент Button, установите его свойства Name и Text, а также добавьте команды создания параметров в обработчик нажатия этой кнопки. Name = btnCreateParam Text = Создание параметров Обработчик события Click: Выполните проверку: 5. Создайте инструменты для программного чтения/установки значения строкового параметра «Лекция 1». Для этого добавьте на форму элемент Label со значением «Параметр «Лекция 1», элемент TextBox c параметром Name = txtbLecture1 и два элемента Button с указанными ниже параметрами: Name = btnGetValueLecture1 Name = btnSetValueLecture1 Text = Получить текущее значение Text = Установить значение Обработчик события Click кнопки чтения значения параметра: 6. Создайте инструменты для программного чтения/установки значения параметра dword «Result». Для этого добавьте на форму элемент Label со значением «Параметр «Result» и элемент numericUpDown c параметром Name = nudSetResult В обработчик события Shown экранной формы добавьте код чтения исходного значения параметра Result, а в обработчик события ValueChanged элемента nudSetResult – код модификации параметра. Выполните проверку работы созданных инструментов. Убедитесь, что без явного указания типа при установке нестрокового параметра, выполнится преобразование типа, и параметр Result станет строковым. Для этого удалите RegistryValueKind из строки, запустите программу, измените значение параметра и проверьте тип Result, зафиксированные в реестре. После проверки восстановите в коде параметр RegistryValueKind. 7. Создайте инструменты для удаления созданных параметров и ключей. Для этого добавьте на форму три элемента Button с указанными ниже параметрами и обработчиками события Click: Name = btnDeleteResult Text = Удалить параметр Result Выполните проверку работы созданных инструментов. Выполните проверку работы этого кода. Программа больше не крашится, после нескольких нажатий на «Удалить параметр Result». Разработайте код проверки при удалении ключей Lecture и AdmPPO. Подобной проверкой исправлены методы btnGetValueLecture1_Click Чтобы программа не крашилась, если еще нет никаких ключей. Ссылка на репозиторий: https://github.com/dmitriy-belkin/RegistryWork 3.2. РАЗРАБОТКА МОДЕЛИ УСЛОВНО-БЕСПЛАТНОЙ ПРОГРАММЫ Разработайте приложение, имеющее ограниченное количество запусков. Технология выполнения: При первом запуске программа должна в разделе KEY_Current_User\Software\Фамилия создать параметр типа Dword с именем RunCount и значением 1. Далее при каждом запуске необходимо считывать этот параметр и увеличивать его на 1. Если количество запусков программы не превышает заданного, то вывести сообщение о количестве оставшихся запусков, иначе запретить использование программы. Отчет должен содержать скрины экранов, демонстрирующие работу программы, скрины редактора реестра и листинг программы. Задаём количество RunCount |