Создание программы Tweaker

 

Содержание


Введение

Анализ предметной области

.1 Анализ существующих систем

.1.1 Программа Tweaker XP

.1.2 Программа XdN Tweaker

.1.3 Программа Registry Tweaker

.1.4 Результаты анализа

.2 Требования к разрабатываемой программе

.2.1 Требования к функциям выполняемых программой

.2.2 Выбор платформы

.3 Платформа Microsoft .Net

Выбор модели

.1 Карта программы

.2 UML диаграммы

.2.1 Разработка Use Case диаграммы

.2.2 Разработка диаграммы классов

.3 Реестр WINDOWS

.3.1 Модель реестра

.3.2 Важность реестра в программе

.3.3 Использование реестра в программе

Разрабока Алгоритмов

.1 Алгоритм взаимодействия с реестром

.2 Алгоритм поиска и открытия ключа

.3 Алгоритм чтения/записи ключа

.4 Алгоритм удаления ключа

Инструментальные средства

.1 Требования к исходным кодам и языкам программирования

.2 Файл хранения ключей

.2.1 Структура хранения данных в файле

.2.2 Получение адреса из файла

.3 Лог файл

.4 Характеристики создаваемого приложения

Эксперемент

.1 Тестирование программы

Экономическая часть

.1 Цель экономической части

.2. Описание характеристик продукта

.3 Оценка затрат на разработку продукта

.4 Расчёт себестоимости и договорной цены продукта

.5 Построение графика безубыточности

.6 Результаты проведения экономических расчётов

Охрана труда

.1 Описание помещения

.2 Анализ опасных и вредных факторов

.3 Микроклимат

.4 Освещение

.5 Шум

.6 Ионизирующее поле

Выводы

Перечень ссылок

Приложение А (листинги и экранные формы)

Приложение В (экранные формы)

Приложение С (графический материал)


Введение


Данная работа направлена на решение задачи быстрой оптимизации ОС для нового пользователя. Когда в наличии всего один компьютер, то можно настроить его вручную, но когда количество компьютеров начинает измеряться в десятках, то настройка компьютеров может занять значительное время. Для более быстрой и простой настройки компьютеров существуют программы твикеры (Англ. Tweaker). Они используют реестр Windows, изменяя или добавляя в него значения, так же при более глубоких настройках меняет параметры ядра ОС.

Таким образом, программы твикеры востребованы в системном администрировании. Программа способна сохранять настройки одного компьютера и затем перенести их на другой, что по времени займёт не более минуты. В современном мире очень важно учитывать время и качество работы, соответственно программы твикеры - незаменимы в своём деле.


1 Анализ предметной области


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

Таким образом - системному администратору необходимо следить за множеством компьютеров и часто искать причину выхода из строя. После выявления неполадки и последующего ремонта, необходимо переустановить ОС. И после этого в действие входят программы твикеры. Они помогают ускорить процесс отладки компьютера на всех уровнях. Так как необходимо изменить множество параметров для правильного функционирования. Для ускорения процесса изменения параметров по разным окнам Windows системный администратор использует шаблоны. Шаблоны - это изначально сохранённые твикером параметры (уже настроенного компьютера) которые можно перенести на другой компьютер, не занимаясь настройкой каждого компьютера с помощью твикера.


1.1 Анализ существующих систем


Существует не много программ твикеров и у каждой есть свои особенности и недостатки. Соответственно встаёт вопрос о том, что бы взять лучшее из этих программ и объединить их в одну программу.


1.1.1 Программа Tweaker XP

XP Tweaker - программа настройки, оптимизации и защиты Windows XP. Включает несколько опций предназначенных специально для русских версий Windows XP. Возможность сохранения настроек в файле для быстрой настройки системы или настройки системы на нескольких компьютерах. Программа имеет подробную справочную систему обо всех имеющихся опциях.

В большинстве случаев XP Tweaker сохраняет только измененные параметры, что повышает стабильность работы программы и системы в целом. Встроенная консоль XP Tweaker выводит все изменения, которые программа делает в реестре.

Программа тестировалась под следующими ОС:XP Professional (Russian)XP Corporate Edition (English + MUI)Server 2003 Enterprise Edition (English + MUI)

Программа не совместима с другими версиями Windows. Вполне возможно большинство опций будут работать в Windows 2000 и Windows Longhorn, для этого запустите программу с ключом /nocheckver. Используйте данную возможность только в случае крайней необходимости, программа не тестировалась и не предназначена для этих операционных систем. С другими версиями Windows (95, 98, ME) программа не работает.[13]


1.1.2 Программа XdN Tweaker

Программа для настройки операционных систем Windows. XdN Tweaker содержит много настроек для различных компонентов системы, которые разбиты на удобные категории. Тут присутствует возможность удаления некоторых элементов Панели управления, настройки параметров Windows Media Player, скрытия пунктов контекстного меню Проводника, удаления ассоциации разных типов файлов с определенными программами, отключения поисковых ассистентов и многое другое. В XdN Tweaker есть опция для отключения появления начальной заставки при запуске почтовых клиентов Outlook Express и Windows Mail, а также функция скрытия поисковой панели и включения меню "Файл" в браузере Internet Explorer 7. [12]


1.1.3 Программа Registry Tweaker

Registry Tweaker - программа для оптимизации системного реестра на ОС Windows 2K/XP/2003. Также Registry Tweaker позволяет увидеть лицензионный ключ Windows, просмотреть список автоматически загружаемых программ, включить параметр, отвечающий за возможность очистки файла подкачки при завершении работы компьютера, создавать резервную копию реестра, и др. Программа имеет удобный интерфейс и простая в работе, все действия можно выполняют за пару кликов.[11]


1.1.4 Результаты анализа

Просмотрев характеристики и возможности выше приведенных программ, были проанализированы недостатки и преимущества программ, основываясь на которых будет идти разработка концептуально новой программы.


1.2 Требования к разрабатываемой программе


Программа будет иметь название Windows Tweaker и должна иметь характерные особенности:

Визуально простой, интуитивно-понятный интерфейс.

Быстроту исполнения.

Достаточное количество параметров (разбитых по группам) для настройки ОС.

Поддержка других языков интерфейса.

Полная инструкция к программе.


1.2.1 Требования к функциям выполняемых программой

Программа должна включать следующие возможности:

) Хранить конфигурацию конкретного пользователя:

Øпараметры защиты;

Øпараметры визуализации;

Øхранение лог сообщений;

Øязыковые параметры.

2) Чтение и редактирование информации в системном реестре:

Øполная конфигурация реестра;

Øотладчик ошибок записи в реестр;

Øизменение внутренних параметров ядра Windows.

3) Управление видеокартой:

Øполнопоточное управление видеокартой:

Øуправление дисплеем.

4) Дополнительные гаджеты для пользователя.

) Сохранение в файле параметров одного компьютера, для последующего переноса на другой системы.


1.2.2 Выбор платформы

Программа разрабатывается с учётом на будущие технологии и совершенствование систем, для этого в разработке приложения необходимо использовать новейшие технологии и средства программирования. Для этого перспективней всего будет использовать платформу .Net Framework.

Используя .Net можно быть уверенным, что программа будет работать на любом компьютере с поддержкой .Net, по этому разработка программы будет осуществляться на языке программирования C# с поддержкой .Net Framework 4.0. [10]


1.3 Платформа Microsoft .Net


.NET Framework - программная технология от компании Microsoft, предназначенная для создания обычных программ и веб-приложений.

Одной из основных идей Microsoft .NET является совместимость различных служб, написанных на разных языках. Например, служба, написанная на C++ для Microsoft .NET, может обратиться к методу класса из библиотеки, написанной на Delphi; на C# можно написать класс, наследованный от класса, написанного на Visual Basic .NET, а исключение, созданное методом, написанным на C#, может быть перехвачено и обработано в Delphi. Каждая библиотека (сборка) в .NET имеет сведения о своей версии, что позволяет устранить возможные конфликты между разными версиями сборок.

.NET является патентованной технологией корпорации Microsoft. Тем не менее, после заключения договоренности с компанией Novell, технология Mono была признана как реализация .NET на Unix-подобных системах (GNU/Linux, Mac OS X). Однако договорённость касается Novell и клиентов Novell, также технологии ASP.NET, ADO.NET и Windows.Forms не были стандартизированы ECMA/ISO и использование их в Mono находится под угрозой претензий со стороны Microsoft (претензии возможны только в странах, где существуют патенты на программное обеспечение). Mono предоставляет реализацию ASP.NET, ADO.NET и Windows.Forms, но в то же время рекомендует обходить эти API.[10]

Среды разработки .NET - приложений:

) Microsoft Visual Studio (C#, Visual Basic .NET, Managed C++),

) SharpDevelop,

) MonoDevelop,

) Eclipse,

) Borland Developer Studio (Delphi for .NET, C#),

) PascalABC.NET и т. д.

Приложения также можно разрабатывать в текстовом редакторе и использовать консольный компилятор.

Подобно технологии Java, среда разработки .NET создаёт байт-код, предназначенный для исполнения виртуальной машиной. Входной язык этой машины в .NET называется MSIL (Microsoft Intermediate Language), или CIL (Common Intermediate Language, более поздний вариант), или просто IL. Применение байт-кода позволяет получить кроссплатформенность на уровне скомпилированного проекта (в терминах .NET: сборка), а не только на уровне исходного текста, как, например, в С. Перед запуском сборки в среде исполнения CLR байт-код преобразуется встроенным в среду JIT-компилятором (just in time, компиляция на лету) в машинные коды целевого процессора. Также существует возможность скомпилировать сборку в родной (native) код для выбранной платформы с помощью поставляемой вместе с .NET Framework утилиты NGen.exe. [2]

Следует отметить, что один из первых JIT-компиляторов для Java был также разработан фирмой Microsoft. Современная технология динамической компиляции позволяет достигнуть уровня быстродействия, аналогичного традиционным «статическим» компиляторам (например, C++), и вопрос быстродействия зачастую зависит от качества того или иного компилятора. [10]


2 Выбор модели


2.1 Карта программы


Программа будет состоять из двух форм (основной и настройки).

Основная форма:

·Параметры и настройки системы (реестр). В данном разделе будут доступны: возможность изменения административных прав, настройка панелей управления Windows, параметры доступа к системе

·Параметры ядра системы (ядро Windows). В данном разделе имеется возможность, контроля подгружаемых библиотек Windows.

·Видео параметры. В данном разделе имеется возможность управления видеокартой на физическом уровне.

·Вкладка сохранения настроек системы

·Органайзер.

Форма настроек программы:

·Параметры языка

·Настройка прав доступа

·Настройка визуальных эффектов

·Создание пользователя


2.2 UML диаграммы

(Unified Modeling Language - унифицированный язык моделирования) - язык графического описания для объектного моделирования в области разработки программного обеспечения. UML является языком широкого профиля, это открытый стандарт, использующий графические обозначения для создания абстрактной модели системы, называемой UML-моделью. UML был создан для определения, визуализации, проектирования и документирования в основном программных систем.

Использование UML не ограничивается моделированием программного обеспечения. Его также используют для моделирования бизнес-процессов, системного проектирования и отображения организационных структур.

Также он позволяет разработчикам программного обеспечения достигнуть соглашения в графических обозначениях. Для этого выработано представление общих понятий (таких как класс, компонент, обобщение (generalization), объединение (aggregation) и поведение). В результате можно больше сконцентрироваться на проектировании и архитектуре.

После анализа UML были выделены его основные преимущества:

UML объектно-ориентированный, в результате чего методы описания результатов анализа и проектирования семантически близки к методам программирования на современных объектно-ориентированных языках;

UML позволяет описать систему практически со всех возможных точек зрения и разные аспекты поведения системы;

Диаграммы UML сравнительно просты для чтения после достаточно быстрого ознакомления с его синтаксисом;

UML расширяет и позволяет вводить собственные текстовые и графические стереотипы, что способствует его применению не только в сфере программной инженерии;

UML получил широкое распространение и динамично развивается. [4]


2.2.1 Разработка Use Case диаграммы

Для создания любых программных продуктов первым делом определяются требования, которым должна удовлетворять система. Однако если написать эти требования на бумаге, то часто можно получить список функций, по которому трудно судить, будет ли будущая система выполнять свое назначение и сможет ли она облегчить пользователю выполнение его работы. Непонятно какие из выполняемых функций более важны и для кого.

Для того, чтобы более точно понять как должна работать система, все чаще используется описание функциональности системы через варианты использования (Use Case или прецеденты). Варианты использования это - описание последовательности действий, которые может осуществлять система в ответ на внешние воздействия пользователей или других программных систем. Варианты использования отражают функциональность системы с точки зрения получения значимого результата для пользователя, поэтому они точнее позволяют ранжировать функции по значимости получаемого результата.

Суть диаграммы вариантов использования состоит в следующем. Проектируемая система представляется в виде множества сущностей или актеров, взаимодействующих с системой с помощью вариантов использования. При этом актером (actor) или действующим лицом называется любая сущность, взаимодействующая с системой извне. Это может быть человек, техническое устройство, программа или любая другая система, которая может служить источником воздействия на моделируемую систему так, как определит сам разработчик. Вариант использования служит для описания сервисов, которые система предоставляет актеру. Диаграмма вариантов использования может дополняться пояснительным текстом, который раскрывает смысл или семантику составляющих ее компонентов. [4]


Рисунок 2.1 - Use Case диаграмма


В программе есть три вида пользователя:

Администратор - имеет полный доступ компьютеру, ко всем его параметрам и настройкам.

Пользователь - имеет ограниченный доступ к компьютеру, может изменять ряд параметров открытые ему администратором.

Гость - имеет базовую функциональность, запуск, работу с программами, но не может менять параметров системы.

Далее рассмотрим UML диаграмму более детально.

Администратор имеет возможность полностью изменять параметры системы, давать и ограничивать доступ другим пользователям, ставить пароль на программу и доступы к отдельным её блокам, настраивать саму программу с нужными ему параметрами, изменять базу данных программы.

Пользователь может иметь, как полные права, так и ограниченные, всё зависит, как администратор распределит права.

Гость имеет ограниченные права он не может что либо устанавливать изменять или настраивать, он имеет базовую работу с компьютером. [4]


2.2.2 Разработка диаграммы классов

Центральное место в объектно-ориентированном программировании занимает разработка логической модели системы в виде диаграммы классов. Диаграмма классов (class diagram) служит для представления статической структуры модели системы в терминологии классов объектно-ориентированного программирования. Диаграмма классов может отражать, в частности, различные взаимосвязи между отдельными сущностями предметной области, такими как объекты и подсистемы, а также описывать их внутреннюю структуру и типы отношений.

Диаграмма классов представляет собой граф, вершинами которого являются элементы типа «классификатор», связанные различными типами структурных отношений. Диаграмма классов может также содержать интерфейсы, пакеты, отношения и даже отдельные экземпляры, такие как объекты и связи. [4]


Рисунок 2.2 - Диаграмма классов


2.3 Реестр WINDOWS


Реестр Windows или системный реестр (англ. Windows Registry) - иерархически построенная база данных параметров и настроек в большинстве операционных систем Microsoft Windows.

Реестр содержит информацию и настройки для аппаратного обеспечения, программного обеспечения, профилей пользователей, предустановки. Большинство изменений в Панели управления, ассоциации файлов, системные политики, список установленного ПО фиксируются в реестре.

Реестр Windows был введён для упорядочения информации, хранившейся до этого во множестве INI-файлов, которые использовались для хранения настроек до того, как появился реестр. [5]


2.3.1 Модель реестра

Реестр - это дерево подкаталогов и файлов, он содержит большое множество подкаталогов и ключей, но у него довольно простая структура.

Реестр имеет основные каталоги «HKEY», которые содержат в себе подкаталоги. (рисунок 2.3)


Рисунок 2.3 Модель реестра Windows


Адрес к ключу можно представить в обычной форме:_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Polices\\NoRun.key

Выше приведен пример, который наглядно показывает структуру реестра.

Сначала идёт основной корневой каталог, затем подкаталоги и в конце ключ.

Программа изначально выполняет запрос к Windows и только потом Windows даёт доступ к реестру и его ключам.

Получив доступ к реестру, программа делает запросы:

) Получение определённого ключа. Когда программа выполняет одну из опций, она делает обращение к заранее известному ключу, после чего можно получить значение содержащуюся в ключе.

) Изменение ключа. При необходимости изменить ключ - делается запрос на получение нужного ключа и снятие флага "только чтение", после чего этот ключ можно изменить.

) Создание ключа. Когда программе необходимо сохранить свои настройки или реестр не содержит нужных ключей, они создаются с параметрам "default". Программа делает запрос на получение нужного ключа, если таковой в реестре не находится, то он создаётся, затем снова идёт проверка на наличие ключа, если таковой найден, то реестр возвращает значение программе, либо переходит к запросу "изменение ключа". (рисунок 2.4)


Рисунок 2.4 - Способ обращения программы к ключам реестра


2.3.2 Важность реестра в программе

Программа очень сильно зависит от реестра, так как выполняемые изменения параметров системы хранятся в ключах реестра. Без реестра - программа является пустой оболочкой, не способной управлять параметрами Windows. Так же программа сохраняет все свои параметры и настройки в ключах реестра. Программа содержит конфигурационные файлы типа "*.ini", но они содержат лишь информацию для ключей реестра, соответственно без реестра файлы конфигураций бесполезны.

Делая заключение можно сказать, что реестр - это и есть параметры Windows, без которых он не будет функционировать, а данная программа является более простой системой управления реестром. [5]


2.3.3 Использование реестра в программе

Приложение содержит в себе все необходимые ключи реестра. Она запрашивает доступ к реестру, ищет необходимый ключ и взаимодействует с ним (удаление, создание, изменение информации ключа).

Рассмотрим детальнее процесс взаимодействия с реестром:

При изменении параметров в программе, идёт поиск идентификатора на нужный ключ, затем найденный ключ записывается в .ini файл (для последующего использования и переноса в лог), делается запрос в реестр, затем идёт поиск необходимого ключа. Если ключ не найден (реестр Windows, не содержит некоторые ключи по умолчанию и их необходимо создать, для дальнейшего конфигурирования ОС), то программа создаёт ключ из своей базы ключей, затем идёт непосредственное изменение ключа и запись изменение в лог файл. [1]

Программа перед запуском считывает все ключи реестра, чтобы отобразить полые параметры системы в программе. Принцип действия такой же, как и при изменении ключей, за исключением, что при считывании программа использует параметр «чтение».

Свои настройки программа так же сохраняет в реестре. При переносе настроек на другой компьютер[1]


3 Разработка алгоритмов


3.1 Алгоритм взаимодействия с реестром


Стоит понимать, что работа с реестром, опасное занятие. Если случайно изменить важный параметр или значение, то ОС может выйти из строя, по этому, необходим точный алгоритм для поиска и изменения ключей реестра.

Алгоритм взаимодействия с реестром содержит в себе три части:

.Алгоритм поиска и открытия ключа.

2.Алгоритм чтения/записи ключа.

.Алгоритм удаления ключа.


3.2 Алгоритм поиска и открытия ключа


Предположим, был изменён какой либо параметр, он берёт из за ранее готового списка путь к ключу, находит его и затем сравнивает его с вторым списком - «явных ключей». Если найденный ключ совпадает с двумя списками, затем он открывается. Если же ключа или подкаталога не существует, то путём сравнения двух списков создаётся подкаталоги и собственно ключ с параметром по умолчанию. (рисунок 3.1) [7]


Рисунок 3.1 - Диаграмма алгоритма поиска и открытия ключа


3.3 Алгоритм чтения/записи ключа


Программа имеет заранее готовые значения для ключей. После открытия ключа программа записывает либо считывает значения с ключа. При записи в ключ добавляется либо изменяется значение и ключ закрывается. При чтении берётся значение ключа и передаётся переменной для дальнейших изменений. (рисунок 3.2)


Рисунок 3.2 - Диаграмма алгоритма чтения/записи ключа


3.4 Алгоритм удаления ключа


Для удаления ключа используется алгоритм «Поиск и открытие», после идёт сравнение со списком, верно ли выбран ключ. Затем идёт процесс удаления ключа из реестра и под каталогов (если это необходимо) - закрытие реестра. (Рисунок 3.3) [5]


Рисунок 3.3 - Диаграмма алгоритма удаления ключа


4 Инструментальные средства


4.1 Требования к исходным кодам и языкам программирования


Система должна быть реализована при помощи технологии .NET. В качестве интегрированной среды следует использовать MS Visual Studio 2010.

Для разработки программы выбран язык программирования C#, так как является наиболее подходящим ля работы с .NET Framework.

Программа работает ч множеством ключей реестра, соответственно, необходим список для хранения этих ключей и дублирующий список для проверки правильности адреса и названия ключа.


4.2 Файл хранения ключей


Программа будет хранить в файле (названым REG_AMKEY.cbh) адреса и названия всех ключей, необходимых для работы. Все ключи должны записываться в определённое место реестра, так как Windows берёт значение из ключей определённых в отдельно означенном месте и если сохранить ключ в какой либо другой раздел, то может появиться конфликт ключей, либо Windows просто не обнаружит нужный для изменения параметра ключ.

В реестре есть ключи, которые при не правильном изменении могут полностью привести в негодное состояние ОС, для таких ключей существует второй список, который сравнивает, точность адреса ключа и его значение, при несовпадении адресов или значение, изменение ключа отменяется и выводится соответствующее сообщение. [7]


4.2.1 Структура хранения данных в файле

Для определения нужного ключа используется индекс и название подкаталога.

Пример:

#№ // Subkey// Key // Value_Index:№ // Value_Null:№;/Sub/ Sub / Sub / Sub …..;

#№ - номер в списке.- основной подкаталог ключа.- точное название ключа._Index:№ - изменяемое программой значение._Null:№ - значение по умолчанию.

Далее следует адрес, по которому определяется ключ- корневой каталог.- подкаталоги.


4.2.2 Получение адреса из файла

Программа считывает файл и ищет определённое значение (индексы). Предположим, был выбран определённый Checkbox - в зависимости от того был флажок снят или поставлен, определяется параметр, который будет записан в ключ. Определённый Checkbox содержит заранее определённый индекс, по нему находится нужная строка в списке, затем из списка берётся адрес ключа. Программа находит нужный ключ и в зависимости от выделения, Checkbox будет задаваться определённое значение ключу. [10]


4.3 Лог файл


Для того, что бы пользователь мог отследить свои действия, программа будет иметь лог файл с хранящимися в нём записями об изменениях параметров системы или действий в программе.

Лог файл - это обычный текстовый документ содержащий: дату и время, название изменяемого параметра и на что он был изменён.

Лог файлы необходимы в программах такого типа, так как пользователь может сделать случайные изменения и для того что бы можно было отыскать случайное изменение в программе существует лог файл. [1]


4.4 Характеристики создаваемого приложения


Программа предназначена для операционных систем семейства Windows, соответственно она поддерживает не одну конкретную операционную систему, но и слишком ранние ОС Windows программа не поддерживает, так как реализованные в ней функции не поддерживаются ранними версиями Windows.

Требования к ПК:

Процессор: 600 MHz

ОЗУ: 256 Mb

Видеокарта: От 64 Mb

Место на жёстком диске: 20 Mb

ОС: Windows XP\2003\Vista\2007\Seven

Преимущества программы:

ØИнтуитивно простой интерфейс

ØВысокая производительность

ØБольшой ряд выполняемых задач

ØСпособность переносить настройки с одного на другой компьютер

Недостатки программы:

ØНевозможность переноса настроек с ОС на иную семейств Windows

ØНекоторые настройки можно вернуть только с помощью данной программы


5 Эксперимент


5.1 Тестирование программы


Для проверки работоспособности программы был проведён ряд тестов над ней. Был взят компьютер, который настраивался с помощью программы.

При запуске программы она отображает состояния параметров в системе.

Как можно увидеть из приведенной ниже экранной формы (Рисунок 4.1), все параметры и настройки доступны пользователю.


Рисунок 5.1 - Основное окно администрирования


В целях эксперимента запретим, часть настроек. (Рисунок 4.2) Отключим:

ØПанель управления

ØВыключение/перезагрузка компьютера

ØКомандная строка «Выполнить»

ØНастройки дисплея


Рисунок 5.2 - В окне администрирования выбраны необходимые пункты


Некоторые параметры вступают в силу только после перезагрузки компьютера.

После перезагрузки компьютера делаем проверку изменений.

Доступ к панели управления. Панель управления располагает множеством настроек и в местах, где компьютеры необходимо сохранять в одном и том же состоянии стоит отключать «Панель управления». После вступления в силу ограничений прав на запуск панели управления, её запуск не возможен.

(Рисунок 4.2)


Рисунок 5.3 - Запуск службы «Панель управления» и соответствующее сообщение об ошибке при ограничениях административных прав


В некоторых целях, необходимо убирать доступ к выключению компьютера.

После применения параметров, должны исчезнуть все способы программного отключения компьютера. (Рисунок 5.4)


Рисунок 5.4 - пункт меню "Завершение работы" отсутствует


Как можно увидеть, пункт выключения и перезагрузки исчез из панели пуск.

Команда запуска даёт множество возможностей запускать настройки Windows и различные службы, отключим и эту возможность. (рисунок 5.5)


Рисунок 5.5 Команда "Run" не активна


Можно увидеть, что кнопка New Task не доступна, соответственно команда Run работать не будет.

Последнее, что мы изменим в ходе эксперимента - это запрет к настройкам дисплея. (Рисунок 5.6)


Рисунок 5.6 - Запуск настройки видеопараметров, запрещён администратором


6 Экономическая часть


6.1 Цель экономической части


Цель проведения экономических расчетов: экономическое обоснование автоматизации библиотечной деятельности по средствам технологии ASP.NET. Для достижения поставленной цели необходимо выполнить следующие задачи:

.Рассчитать трудоемкость выполнения основных работ проекта;

2.Составить смету затрат на разработку программного продукта;

.Произвести оценку экономической эффективности создаваемого программного продукта


6.2. Описание характеристик продукта


Наименование - электронная библиотека для малой структуры (на пример кафедры). Данная информационная система будет использоваться с целью хранения электронных книг и методичек, а также добавления и постоянного обновления материалов, связанных с учебным процессом. Характеристики программного продукта приведены в таблице 6.1.


Наименование характеристикиЗначение параметраОперационная системаWindows ХР/2003/Vista/2007/SevenОбъем ОЗУ256 MbДисковое пространство20 MbПрограммные средства.net framework 4, C#Таблица 6.1 - Характеристики программного продукта


6.3 Оценка затрат на разработку продукта


Для разработки программного продукта требуется один инженер-программист, оплата труда которого составляет 2000 грн./мес. (22 рабочих дня в месяце). Поскольку проект комплексный, то после определения общих затрат, связанных со всей разработкой проекта, оцениваются затраты для каждой части проекта. Просуммировав общие и долевые затраты, определим стоимость всей разработки программного продукта. Рассчитаем общие затраты на разработку проекта. Расходы на материалы представлены в таблице 6.2:


МатериалКоличество, шт.Цена за единицу, грн.Сумма, грн.НазначениеБумага формата А4 80g/m2 (500л.)135,0035,00ДокументацияИспользование Интернет-услуг160,0060,00Изучение существующей тематикиКартридж для принтера1200,00200,00Печать документацииФлеш память150,0050,00Хранение и перенос информацииИтого345,00Таблица 6.3 - Расходы на материалы


6.4 Расчёт себестоимости и договорной цены продукта


Трудоемкость разработки оценим, выполнив детальный расчет наиболее трудоемкой работы - это работы по алгоритмизации и программированию с учетом удельного веса трудоемкости этих работ по отношению к общей трудоемкости разработки. Трудоемкость работ по разработке продукта представлена формулой 6.5.


t=?ti=tтз +tA+tп+tд+tт+tэ, (6.5)


где tтз - трудоемкость организационной подготовки к созданию задачи, разработка и утверждение ТЗ (чел-дни);- трудоемкость разработки машинного алгоритма (чел.-дни);п - трудоемкость разработки программы (чел.-дни);д - трудоемкость подготовки рабочей документации (чел.-дни);т - трудоемкость отладки оборудования, тестирования программы, корректировки программы и технической документации (чел.-дни);э - трудоемкость сдачи в промышленную эксплуатацию (чел.-дни).

Трудозатраты всех видов определяются через условное количество команд (операторов) языка программирования в программном продукте. Условное количество команд - это общее число команд (операторов), которое потребуется отработать программисту в процессе работы с учетом различных изменений в постановке задачи и совершенствования программы. В общем виде:


(6.6)


где q - предполагаемое число команд программы (q=300); k - коэффициент сложности программы (к=1.3); n - количество коррекций в алгоритме поиска по базе данных (n=3 с коррекцией 0.05) Р - коэффициент коррекции программы. P=0.11 (так как поставленная задача была корректно и полностью сформулирована, проводились лишь небольшие доработки с алгоритмами поиска)

Условное количество операторов программы:

= 300*1,3*(1+0,11)=432.9.


Величины трудозатрат tтз,tA,tп,tд,tт,tэ находим по формуле 6.7


(6.7)


где - производительность исполнителя для j-го вида работы (команд/час), данные представлены в табл. 6.5; Ккв- коэффициент квалификации исполнителя, Ккв= 1.2 (т.к. стаж работы исполнителя до 5 лет); у - коэффициент, учитывающий качество описания задачи (y=1.4); j - вид работ в формуле (таблица 6.4).


Вид работыПроизводительность (команд/час)Трудоемкость (чел. - дни)Организационная подготовка к созданию задачи, разработка и утверждение ТЗ404Разработка машинного алгоритма552Разработка программы156Подготовка рабочей документации552Отладка оборудования, тестирование и корректировка программы и технической документации404Сдача в промышленную эксплуатацию602Итого20Таблица 6.5 - Производительность исполнителя и расчет трудоемкости основных работ


В результате подсчетов (табл.6.5) получили, что на разработку системы потребуется 20 дней (если разрабатывать ее одному исполнителю).

Фонд основной заработной платы вычисляем по формуле (6.8)


ос=3сд*Т, (6.8)


где Т - трудоемкость работы, в нашем случае Т=20 чел.-дней;

сд - среднедневная заработная плата определяется по формуле (6.9)


(6.9)


где Змес=2000 грн. - месячная заработная плата;

Ф - количество рабочих дней в месяце при пятидневной рабочей неделе, Ф=22 дня.

Согласно (6.8) и (6.9) получаем


сд =4000/22=90,9 грн.,

С = 90,9 *20=1818 грн.


Дополнительная заработная плата составляет 10..20 % от основной заработной платы (условимся, что Здоп составляет 10 %).

Получаем дополнительную заработную плату Здоп = 1818 * 0,10=181,8 грн.

Фонд заработной платы составляет 3ос+Здоп = 1818 + 181,8 = 1999.8 грн.

Прочие прямые расходы составляют эксплуатационные расходы и амортизационные отчисления.

Эксплуатационные расходы рассчитаем по формуле 6.10:


ЭР =ТМВ*СМВ, (6.10)


где Тмв - время кодирования и отладки программного продукта на ЭВМ


(6.11)


Смв- стоимость машинного времени (Смв= 1 грн/час);- средние затраты машинного времени на кодирование и отладку одной условной команды (m = 10 мин).


Тмв = (432.9*10)/(60*1,2)=60.1


Эксплуатационные расходы по (6.11) и (6.10) составляют


Зэр = 60.1грн.


АМО - 20 % от стоимости основных фондов. Стоимость основных фондов определяется исходя из количества используемых ПЭВМ на момент проектирования по рыночным ценам. 3АМО = 0,2*5000=1000 грн.

Накладные расходы составляют 100 % от заработной платы.

Командировочные расходы составляют 15 % от заработной платы.


Зк=1818*0,15=272,7грн.


Отчисления на социальные нужды: Зсоц = 1818*0,375= 681.75 грн.

Отчисления на соц.страхование (1,5 %): Зстр = 1818*0,015= 27,27 грн.

Отчисления в пенсионный фонд (33 %) Зпф = 1818*0,33= 599,94 грн.

Отчисления в фонд занятости (1,3 %) Зфз = 1818*0,013= 23,63 грн.

Амортизационные отчисления (20%) Зам =1818*0,2= 363,6 грн.

Сметная калькуляция на разработку программного продукта представлена в таблице 6.6.

Цена разработки (без НДС) рассчитывается по формуле 6.12


Цразр = Ср+Пплан = 10796.7 + 3239.01=14035.71 грн., (6.12)


где Пплан - плановая прибыль


(6.13)


К рент - коэффициент рентабельности, принимается в размере 30%


П_план = 10796.7 *0,3 = 3239.01


Сумма НДС от цены разработки: 14035.71*0,2=2807.1

Цена разработки с НДС: 14035.71+2807.1= 16842.8

Налогооблагаемая прибыль (30% от Пплан):


Пн=3239.01*0,3 = 971.9 грн. (6.14)


Чистая прибыль


Пч= Пплан -Пн= 3239.01-971.9 =2267.1 грн. (6.15)


Вычислим цену продажи программного продукта


(6.16)


где Зтир - затраты на тиражирование


Зтир= Смч *Тк+Зд+Зм+Зи (6.17)


где Смч - стоимость одного машинного часа (1 грн/час);

Тк - время кодирования системы (1 час);

Зд - стоимость одного диска (3,00 грн);

Зм - затраты на документацию (500 листов А4 - 35,00 грн);

Зи - заработная плата исполнителя за время кодирования (20 грн/час);продаж - число предполагаемых продаж; Nпродаж = 30 копий;


Зтир =1+3+35+30=69 грн,


Зад - затраты на адаптацию:


ад =0,05 * Сp = 0,05 * 10796.7 = 539.8 грн

Цпп = (10796.7+ 3239.01)/30 + 69 + 539.8 =1076,6грн,

ВР = Цпп * Nпродаж =1076,6*30=32299.7 грн.

= (6.18)

Спп=10796.7/30+69+539.8 =968.69 грн./шт.

С реал. = С ПП * N продаж

С реал.= 968.69 *30=29060.7 грн.


№Статья расходаСметная стоимость, грн1Материалы с учетом НДС3452Основная заработная плата1818Дополнительная заработная плата181,8Отчисления на социальные нужды (37,5%): 1) Отчисления на соц.страхование (1,5 %) 2) Отчисления в пенсионный фонд (33 %) 3) Отчисления в фонд занятости (1,3 %)681.75 27,27 599,94 23,631) Эксплуатационные расходы 2) Амортизационные отчисления (20%)60.1 363,6 Накладные расходы (100%)1818Командировочные расходы (15%)272,73Себестоимость разработки программного продукта10796.74Предельный уровень рентабельности, % 305Плановая прибыль3239.016Цена разработки (без НДС)14035.717Сумма НДС от цены разработки2807.18Цена разработки с НДС16842.89Налогооблагаемая прибыль 971.910Чистая прибыль2267.1Таблица 6.5 - Смета на разработку программного продукта


6.5 Построение графика безубыточности


Построим график достижения безубыточности разработки. По графику можно найти точку безубыточности, т.е. объем производства, при котором совокупные расходы и доходы от реализации продукции становятся равными. Дальнейшее увеличение объемов сбыта увеличивает прибыль.

Точку безубыточности рассчитаем по формуле 5.18:


Цпп *Х =Спост + Спер *Х,


где Цпп - цена одной копии = 1076,6грн; (5.19)

х - количество копий программного продукта, окупающие затраты на разработку;

Спост- условно-постоянные затраты программного продукта = 10796.7грн;

Спер- условно-переменные затраты - тиражирование и адаптация одной проданной копии


Спер = 69 + 539.8 = 608.8 грн.

(1076,6- 608.8 )Х=10796.7


Точка безубыточности х =23.07 Следовательно, только после реализации 24-ой копии программного продукта, проект станет рентабельным.

График достижения безубыточности разработки продукта представлен на рисунке 6.1:


Рисунок 6.1. График достижения точки безубыточности


6.6 Результаты проведения экономических расчётов


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

. На разработку системы потребуется 20 рабочих дней при условии работы одного инженера-программиста;

. Доход от продажи всего объема продукции составит 32299.7 грн. Чистая прибыль - 2267.1грн.

. Проект станет рентабельным после продажи 24-ой копии программного продукта.


7 Охрана труда


Целью этой работы является разработка проекта (и последующая его реализация) электронной библиотеки для малой структуры. Он будет служить для упрощения доступа к специальной литературе и помощи в учебном процессе студентам и преподавателям. Так же существует возможность использования его в офисе. Следовательно, применение программы будет осуществлено в оборудованной компьютерами комнате.

Поэтому необходимо определить все вредные и опасные факторы, которые могут влиять на человека, который работает с библиотекой, а также разработать комплекс мероприятий, направленных на уменьшение или полную ликвидацию нежелательных воздействий этих факторов.


7.1 Описание помещения


Рассмотрим аудиторию в университете (схожим образом может быть устроено и офисное помещение), которая находится на первом этаже железобетонного здания. План помещения представлен на рисунке 7.1.


Рисунок 7.1 - План помещения


Основным оборудованием рабочего места является видео-дисплейный терминал (ВДТ), который включает видеомонитор, клавиатуру, рабочий стол, стул. Вспомогательным является преподавательский стол и доска.

ЭВМ стоит на специально оборудованном рабочем столе (высота - 725мм, ширина - 750мм, глубина - 850мм), рядом стул (высота спинки - 300мм, ширина - 380мм, кривизна - 400мм) и подставка для ног (ширина - 300мм, глубина - 400мм).

Согласно требованиям по эксплуатации персональных ЭВМ, проект предусматривает следующее характеристики: длина А=10 м, ширина В=5м; электропитание переменным током 220 В частотой 50 Гц. Высота помещения 2.6 м. Общая площадь составляет 50 м2.

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

1. потолок 0.7;

. стены 0.5;

. пол 0.4.

Поверхность пола ровная, нескользкая, удобная для уборки и обладает антистатическими свойствами.

программа алгоритм реестр ключ код

7.2 Анализ опасных и вредных факторов


Согласно ГОСТ 12.0.003-74 вредные и опасные производственные факторы, которые могут влиять на человека при работе в данном помещении, по природе действия подразделяются на физические и психофизиологические.

Возможные следующие вредные и опасные физические производственные факторы:

повышенная или пониженная влажность воздуха;

повышенная или пониженная температура воздуха;

повышенная или пониженная скорость движения воздуха.

повышенный уровень шума

недостаточная или чрезмерная освещенность.

воздействие вредных веществ

электромагнитное излучение (ЕМИ) и ионизированное излучение.

ионизация воздуха

Возможные следующие вредные и опасные психофизиологические производственные факторы:

умственное перенапряжение;

монотонность работы;

эмоциональные перегрузки;

перенапряжение зрительных или слуховых анализаторов.

Анализ психофизиологических факторов, как основных при работе в помещении, показал следующее:

у лиц, занятых эмоционально напряженной умственной деятельностью возникает возможность развития информационных нервных перенапряжений и неврозов.


7.3 Микроклимат


Метеорологические условия рабочей среды (микроклимат) оказывают влияние на процесс теплообмена и характер работы. Микроклимат характеризуется температурой воздуха, его влажностью и скоростью движения, а также интенсивностью теплового излучения. Длительное воздействие на человека не благоприятных метеорологических условий резко ухудшает его самочувствие, снижает производительность труда и приводит к заболеваниям.

Санитарные нормы микроклимата производственных помещений устанавливают оптимальные и допустимые величины показателей микроклимата для рабочей зоны производственных помещений предприятий с учётом тяжести выполняемой работы и периодов года.

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

Оптимальные условия микроклимата для категории работ типа 1а:

а) температура воздуха 22-24 °С (в холодный период года), 23-25 °С (в теплый период года);

б) относительная влажность воздуха 40-60%;

в) скорость движения воздуха 0,1 м/с.

Уровни положительных и отрицательных аэроионов в воздухе помещений, где расположены ПЭВМ, должны соответствовать действующим санитарно эпидемиологическим нормативам.

Содержание вредных химических веществ в воздухе производственных помещений, в которых работа с использованием ПЭВМ является вспомогательной, не должно превышать предельно допустимых концентраций вредных веществ в воздухе рабочей зоны в соответствии с действующими гигиеническими нормативами.

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

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


7.4 Освещение


Человек, производственные функции которого неразрывно связаны с ЭВМ, до 90% информации получает через органы зрения. Следовательно, важным и необходимым является обеспечение надлежащего уровня освещения рабочего места сотрудника.

Искусственное освещение в помещениях для эксплуатации ПЭВМ должно осуществляться системой общего равномерного освещения. В производственных и административно-общественных помещениях, в случаях преимущественной работы с документами, следует применять системы комбинированного освещения (к общему освещению дополнительно устанавливаются светильники местного освещения, предназначенные для освещения зоны расположения документов).

Освещенность на поверхности стола в зоне размещения рабочего документа должна быть 300 - 500 лк. Освещение не должно создавать бликов на поверхности экрана. Освещенность поверхности экрана не должна быть ниже 500 лк.

Следует ограничивать прямую блесткость от источников освещения, при этом яркость светящихся поверхностей (окна, светильники и др.), находящихся в поле зрения, должна быть не более 200 кд/м.

Следует ограничивать отраженную блесткость на рабочих поверхностях (экран, стол, клавиатура и др.). Это делается за счет правильного выбора типов светильников и расположения рабочих мест по отношению к источникам естественного и искусственного освещения, при этом яркость бликов на экране ПЭВМ не должна превышать 40 кд/м и яркость потолка не должна превышать 200 кд/м.

Показатель ослепленности для источников общего искусственного освещения в производственных помещениях должен быть не более 20. Показатель дискомфорта в административно-общественных помещениях - не более 40, в дошкольных и учебных помещениях - не более 15.

Яркость светильников общего освещения в зоне углов излучения от 50 до 90 градусов с вертикалью в продольной и поперечной плоскостях должна составлять не более 200 кд/м2, защитный угол светильников должен быть не менее 40 градусов.

Светильники местного освещения должны иметь не просвечивающий отражатель с защитным углом не менее 40 градусов.

Следует ограничивать неравномерность распределения яркости в поле зрения пользователя ПЭВМ, при этом соотношение яркости между рабочими поверхностями не должно превышать 3:1 - 5:1, а между рабочими поверхностями и поверхностями стен и оборудования - 10:1.

В качестве источников света при искусственном освещении следует применять преимущественно люминесцентные лампы типа ЛБ и компактные люминесцентные лампы. При устройстве отраженного освещения в производственных и административно-общественных помещениях допускается применение метало галогенных ламп. В светильниках местного освещения допускается применение ламп накаливания, в том числе галогенных.

Коэффициент запаса (Кз) для осветительных установок общего освещения должен приниматься равным 1,4.


7.5 Шум


Источниками шума на рабочем месте оператора ЭВМ являются как сами ЭВМ, так и периферийное оборудование.

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

Длительное воздействие интенсивного шума может привести к патологическому состоянию слухового органа, к его утомлению и возникновению профессионального заболевания - тугоухости, то есть к потере слуха. Шум вызывает изменения сердечно-сосудистой системы, сопровождаемое нарушением тонуса и ритма сердечных сокращений, изменение артериального давления, приводит к нарушению нормальной функции желудка. Особенно подверчена воздействию центральная нервная система. Отмечается изменение органов зрения, вестибулярного аппарата, увеличение внутричерепного давления, нарушение обменных процессов организма.

Нормирование шума в аудитории будет осуществляется по предельному спектру шума и по уровню звука в Дб.


Частоты (Гц)31,5631252505001000200040008000ДбУровни (Дб)96837468636057555465Таблица 7.1 - Допустимые уровни звукового давления


7.6 Ионизирующее поле


Основным источником электромагнитных полей на рабочем месте оператора ЭВМ является электронно-лучевая трубка дисплея. Электромагнитные поля оказывают специфическое воздействие на ткани человека как биологические объекты. Они изменяют ориентацию клеток или цепей молекул в соответствии с направлением силовых линий электрического поля, ослабляют биохимическую активность белковых молекул, нарушают функции сердечно-сосудистой системы, органов дыхания, пищеварения и некоторых биохимических показателей крови (изменяется соотношение эритроцитов и лейкоцитов крови, возникает лейкоцитоз). Электромагнитные поля неблагоприятно влияют на зрение, вызывают головную боль, нарушение сна, снижение аппетита, понижение артериального давления. Воздействие электромагнитных полей на человека зависит от величин следующих параметров:

напряжение электрического и магнитного полей;

величина потока энергии;

частота колебаний;

размер облучаемого тела.

Электробезопасность - это система организационных и технических мероприятий и средств, обеспечивающих защиту от вредного и опасного воздействия электрического тока, электрической дуги, электромагнитного поля и статического электричества.

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

Продолжительность работы с компьютером не должна превышать четырех часов.


Выводы


В рамках данной дипломной работы было спроектирована программа для настройки и отладки ОС Windows. При разработке использовалась технология.Net, Win32, а также использовался реестр Windows. Все настройки программы хранятся в реестре Windows и динамически меняются в зависимости от работы программы. Программа имеет удобный интерфейс и возможности по настройке самой себя. Программа сделана по аналогии программы Tweaker XP, хоть и отличается интерфейсом и доступными параметрами.

Так же в ходе работы была выполнена экономическая часть, где был сделан расчёт себестоимости программы.

Был изучен вопрос охраны труда и способов размещения людей для работы на компьютере в закрытом помещении.


Перечень ссылок


1. Боренков А., Зозуля Ю. Windows XP. Библиотека пользователя / Боренков А., Зозуля Ю.:Питер, 2006. - 496 с.

. Пауэрс Л., Снелл М. Microsoft Visual Studio 2008 / Пауэрс Л., Снелл М.: БХВ-Петербург, 2009, - 1191 с.

3. Микеев Н. Тонкая настройка Windows XP / Микеев Н.: Питер, 2007. - 112с.

4. Лешек А. Мацяшек Анализ требований и проектирование систем с использованием UML / Лешек А. Мацяшек. - М.: Вильямс, 2002. - 428 с.

. Куприянова А.В. РЕЕСТР WINDOWS XP: Настройки, трюки, секреты. Настольная книга пользователя / Куприянова А.В.: ЭКСМО, 2006. - 188 с.

. Карлюк В.В. Microsoft Windows XP Professional. Опыт сдачи сертификационного экзамена 70-270 / Карлюк В.В.: Питер, 2004. - 513 с.

. Microsoft Innovations Руководство пользователя Windows Vista / Microsoft Innovations: Microsoft, 2008. - 332 с.

8. Павловская Т.А. С#. Программирование на языке высокого уровня. Учебник для ВУЗов. - СПб.: Питер, 2007. - 432 с.

. Петцольд Ч. Программирование с использованием Microsoft Windows Forms. Мастер-класс. - М.: Русская редакция; Спб.: Питер, 2006. - 434 с.

. Шилдт Г. С#: Учебный курс. - СПб.: Питер: К.: Издательская группа BHV, 2002.- 512 с.

. Registry Tweaker [Электронный ресурс] // Сайт разработчиков программы Registry Tweaker - Режим доступа: #"justify">. XdN Tweaker [Электронный ресурс] // Сайт разработчиков программы XdN Tweaker - Режим доступа: #"justify">. Tweaker XP [Электронный ресурс] // Сайт разработчиков программы

Tweaker XP - Режим доступа: #"justify">Приложение А

(листинги и экранные формы)


Приведенный ниже листинг программы находится на стадии разработки и в дальнейшем, будет дорабатываться.

WinXP.cs


using System;System.Collections.Generic;System.ComponentModel;System.Data;System.Drawing;System.Linq;System.Text;System.Windows.Forms;Microsoft.Win32;System.Management;


WindowsFormsApplication1

{

public partial class Form1 : Form

{

public Form1()

{ InitializeComponent(); }


private void exitToolStripMenuItem_Click(object sender, EventArgs e)

{ Close(); }


private void button1_Click(object sender, EventArgs e)

{ this.tabControl1.SelectTab(tabPage1); }


private void button5_Click(object sender, EventArgs e)

{ this.tabControl1.SelectTab(tabPage5); }


private void button2_Click(object sender, EventArgs e)

{ this.tabControl1.SelectTab(tabPage2); }


private void button3_Click(object sender, EventArgs e)

{ this.tabControl1.SelectTab(tabPage3); }


private void button4_Click(object sender, EventArgs e)

{ this.tabControl1.SelectTab(tabPage4); }


private void button1_MouseHover(object sender, EventArgs e)

{ toolStripStatusLabel1.Text = "Administration"; }


private void button1_MouseLeave(object sender, EventArgs e)

{ toolStripStatusLabel1.Text = ""; }


private void button2_MouseHover(object sender, EventArgs e)

{ toolStripStatusLabel1.Text = "System"; }


private void button2_MouseLeave(object sender, EventArgs e)

{ toolStripStatusLabel1.Text = ""; }


private void button3_MouseHover(object sender, EventArgs e)

{ toolStripStatusLabel1.Text = "Visual"; }


private void button3_MouseLeave(object sender, EventArgs e)

{ toolStripStatusLabel1.Text = ""; }


private void button4_MouseHover(object sender, EventArgs e)

{ toolStripStatusLabel1.Text = "Registry"; }


private void button4_MouseLeave(object sender, EventArgs e)

{ toolStripStatusLabel1.Text = ""; }


private void button5_MouseHover(object sender, EventArgs e)

{ toolStripStatusLabel1.Text = "Recycle"; }


private void button5_MouseLeave(object sender, EventArgs e)

{ toolStripStatusLabel1.Text = ""; }


private void button6_Click(object sender, EventArgs e)

{

if (checkBox1.Checked == true)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Explorer", true);

key.SetValue("NoControlPanel", 1);}

else

{if (checkBox1.Checked == false)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Explorer", true);

key.SetValue("NoControlPanel", 0);}}


if (checkBox6.Checked == true)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Explorer", true);

key.SetValue("NoSetTaskbar", 1);

}

else

{if (checkBox6.Checked == false)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Explorer", true);

key.SetValue("NoSetTaskbar", 0);}}


if (checkBox2.Checked == true)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\System", true);

key.SetValue("NoDispCPL", 1);}

else

{if (checkBox2.Checked == false)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\System", true);

key.SetValue("NoDispCPL", 0);}}


if (checkBox3.Checked == true)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Network", true);

key.SetValue("NoNetSetup", 1);

}

else

{if (checkBox3.Checked == false)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Network", true);

key.SetValue("NoNetSetup", 0);}}

if (checkBox7.Checked == true)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Uninstall", true);

key.SetValue("NoRemovePage", 1);

}

else

{if (checkBox7.Checked == false)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Uninstall", true);

key.SetValue("NoRemovePage", 0);}}


if (checkBox8.Checked == true)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Explorer", true);

key.SetValue("NoClose", 1);

}

else

{if (checkBox8.Checked == false)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Explorer", true);

key.SetValue("NoClose", 0);}}


if (checkBox9.Checked == true)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Explorer", true);

key.SetValue("NoRun", 1);

}

else

{if (checkBox9.Checked == false)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Explorer", true);

key.SetValue("NoRun", 0);}}


if (checkBox10.Checked == true)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Explorer", true);

key.SetValue("DisableRegistryTools", 1);

}

else

{if (checkBox10.Checked == false)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Explorer", true);

key.SetValue("DisableRegistryTools", 0);}}


if (checkBox11.Checked == true)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Uninstall", true);

key.SetValue("NoAddFromInternet", 1);

}

else

{if (checkBox11.Checked == false)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Uninstall", true);

key.SetValue("NoAddFromInternet", 0);}}


if (checkBox12.Checked == true)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\System", true);

key.SetValue("NoDispSettingsPage", 1);

}

else

{if (checkBox12.Checked == false)

{RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\System", true);

key.SetValue("NoDispSettingsPage", 0);}}

}


private void Form1_Load(object sender, EventArgs e)

{

label1.Text = ("Computer Name: " + Environment.MachineName);

label2.Text = ("User Name: " + Environment.UserName);

label3.Text = ("Platform: " + Environment.OSVersion);

label4.Text = ("Identity: " + Environment.OSVersion.Platform);

label5.Text = ("Time From System Load: " + Environment.TickCount);

label6.Text = ("Physical Memory:" + Environment.WorkingSet / 1024);

label7.Text = ("CPU Count: " + Environment.ProcessorCount);

label8.Text = ("Command line: " + Environment.CommandLine);


{ try

{

ManagementObjectSearcher searcher=new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_VideoController");


foreach (ManagementObject queryObj in searcher.Get())

{

int i;

VideocardName.Text=(""+ queryObj["Caption"]);

MemoryType.Text=("GDDR"+ queryObj["VideoArchitecture"]);

if(queryObj["AcceleratorCapabilities"] == null)

AcceleratorCapabilities.Text=(""+ queryObj["AcceleratorCapabilities"]);

else

{UInt16[] arrAcceleratorCapabilities = (UInt16[])(queryObj["AcceleratorCapabilities"]);

foreach (UInt16 arrValue in arrAcceleratorCapabilities)

{AcceleratorCapabilities.Text=(""+ arrValue);}}

AdapterCompability.Text=(""+ queryObj["AdapterCompatibility"]);

Memory.Text=(""+queryObj["AdapterRAM"]);

string s=Memory.Text;

i=Int32.Parse(s);

double z = i/1048576;

Memory.Text=z.ToString()+"Mb";

ClassName.Text=(""+ queryObj["CreationClassName"]);

BitPerPixel.Text=(""+ queryObj["CurrentBitsPerPixel"]);BitPerPixel.Text=(""+ queryObj["CurrentBitsPerPixel"]);

ResolutionWidth.Text=(""+ queryObj["CurrentHorizontalResolution"]);

Colors.Text=(""+ queryObj["CurrentNumberOfColors"]);

RefreshRate.Text=(""+ queryObj["CurrentRefreshRate"]+"MHz");

ResolutionHeight.Text=(""+ queryObj["CurrentVerticalResolution"]);

DeviceID.Text=(""+ queryObj["DeviceID"]);

DriverVersion.Text=(""+ queryObj["DriverVersion"]);

DisplayDrivers.Text=(""+ queryObj["InstalledDisplayDrivers"]);

MinRefreshRate.Text=(""+ queryObj["MinRefreshRate"]+"MHz");

PNPDeviceID.Text=(""+ queryObj["PNPDeviceID"]);

Status.Text=(""+ queryObj["Status"]);

VideoProcessor.Text=(""+ queryObj["VideoProcessor"]);}}

finally{}}


{

RegistryKey Key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Explorer", true);

Object Index = Key.GetValue("NoControlPanel");

if ((int)Index == 1)

{ checkBox1.Checked = true; }

}


{

RegistryKey Key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\System", true);

Object Index = Key.GetValue("NoDispCPL");

if ((int)Index == 1)

{ checkBox2.Checked = true; }

}


{

RegistryKey Key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Network", true);

Object Index = Key.GetValue("NoNetSetup");

if ((int)Index == 1)

{ checkBox2.Checked = true; }

}

{

RegistryKey Key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Explorer", true);

Object Index = Key.GetValue("NoSetTaskbar");

if ((int)Index == 1)

{ checkBox6.Checked = true; }

}


{

RegistryKey Key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Uninstall", true);

Object Index = Key.GetValue("NoRemovePage");

if ((int)Index == 1)

{ checkBox6.Checked = true; }

}


{

RegistryKey Key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Explorer", true);

Object Index = Key.GetValue("NoClose");

if ((int)Index == 1)

{ checkBox8.Checked = true; }

}


{

RegistryKey Key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Explorer", true);

Object Index = Key.GetValue("NoRun");

if ((int)Index == 1)

{ checkBox9.Checked = true; }

}


{

RegistryKey Key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Explorer", true);

Object Index = Key.GetValue("DisableRegistryTools");

if ((int)Index == 1)

{ checkBox10.Checked = true; }

}


{

RegistryKey Key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\Uninstall", true);

Object Index = Key.GetValue("NoAddFromInternet");

if ((int)Index == 1)

{ checkBox11.Checked = true; }

}


{

RegistryKey Key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\System", true);

Object Index = Key.GetValue("NoDispSettingsPage");

if ((int)Index == 1)

{ checkBox11.Checked = true; }

} }


private void prToolStripMenuItem_Click(object sender, EventArgs e)

{

}

}

}

Design.cs

//------------------------------------------------------------------------------

// <auto-generated>

// This code was generated by a tool.

// Runtime Version:2.0.50727.4016

//

// Changes to this file may cause incorrect behavior and will be lost if

// the code is regenerated.

// </auto-generated>

//------------------------------------------------------------------------------

WindowsFormsApplication1.Properties {

using System;

/// <summary>

/// A strongly-typed resource class, for looking up localized strings, etc.

/// </summary>

// This class was auto-generated by the StronglyTypedResourceBuilder

// class via a tool like ResGen or Visual Studio.

// To add or remove a member, edit your .ResX file then rerun ResGen

// with the /str option, or rebuild your VS project.

[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "2.0.0.0")]

[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

internal class Resources {

private static global::System.Resources.ResourceManager resourceMan;

private static global::System.Globalization.CultureInfo resourceCulture;

[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]

internal Resources() {

}

/// <summary>

/// Returns the cached ResourceManager instance used by this class.

/// </summary>

[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]

internal static global::System.Resources.ResourceManager ResourceManager {

get {

if (object.ReferenceEquals(resourceMan, null)) {

global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("WindowsFormsApplication1.Properties.Resources", typeof(Resources).Assembly);

resourceMan = temp;

}

return resourceMan;

}

}

/// <summary>

/// Overrides the current thread's CurrentUICulture property for all

/// resource lookups using this strongly typed resource class.

/// </summary>

[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]

internal static global::System.Globalization.CultureInfo Culture {

get {

return resourceCulture;

}

set {

resourceCulture = value;

}

}

internal static System.Drawing.Bitmap _1244029531____vol__04_029 {

get {

object obj = ResourceManager.GetObject("1244029531_-__vol-_04-029", resourceCulture);

return ((System.Drawing.Bitmap)(obj));

}

}

internal static System.Drawing.Bitmap _1244117112____vol__05_0__7 {

get {

object obj = ResourceManager.GetObject("1244117112_-__vol-_05-0-_7", resourceCulture);

return ((System.Drawing.Bitmap)(obj));

}

}

internal static System.Drawing.Bitmap Grid {

get {

object obj = ResourceManager.GetObject("Grid", resourceCulture);

return ((System.Drawing.Bitmap)(obj));

}

}

}

}



Приложение В

(экранные формы)


Рисунок 1 - Панель настройки Администрирования


Рисунок 2 - Вид на системные параметры


Рисунок 3 - Панель настройки видеокарты.


Рисунок 4 - Панель настройки рабочего стола


Рисунок 5 - Панель настройки программы


Приложение С

(графический материал)









Содержание Введение Анализ предметной области .1 Анализ существующих систем .1.1 Программа Tweaker XP .1.2 Программа XdN Tweaker .1.3 Прог

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ