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

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

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 10.10.2011
Размер файла 6,5 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

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

Выводы

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

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

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

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

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

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

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

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

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

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

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

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

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

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

11. Registry Tweaker [Электронный ресурс] // Сайт разработчиков программы Registry Tweaker - Режим доступа: http://www.searchmagnified.com/Registry_Recovery.cfm?domain

12. XdN Tweaker [Электронный ресурс] // Сайт разработчиков программы XdN Tweaker - Режим доступа: http://xenomorph.net/2011/01/31/xdn-tweaker-0-9-2-5/

13. Tweaker XP [Электронный ресурс] // Сайт разработчиков программы

Tweaker XP - Режим доступа: http://xptweak.sourceforge.net/index.htm

Приложение А

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

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

Tweaker WinXP.cs

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using Microsoft.Win32;

using System.Management;

namespace 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)

{

}

}

}

Resource 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>

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

namespace 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 - Панель настройки программы

Приложение С

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

Размещено на Allbest.ru


Подобные документы

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

    дипломная работа [1,5 M], добавлен 22.11.2015

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

    курсовая работа [541,3 K], добавлен 19.05.2014

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

    реферат [24,5 K], добавлен 03.10.2010

  • Проектирование программы для предприятия ООО "Чудо свечи" в среде программирования Borland Delphi. Произведение расчета системы методом аддитивной оптимизации. Требования к функциям, выполняемым системой, к программному и аппаратному обеспечению.

    курсовая работа [2,8 M], добавлен 27.02.2015

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

    курсовая работа [423,1 K], добавлен 24.03.2014

  • Схема работы и требования к программам шифрования и дешифрования. Алгоритмы и тексты программы шифрования и программы дешифрования, выполненные на языке программирования C/C++. Содержание файла с исходным текстом, с шифротекстом, с дешифрованным текстом.

    курсовая работа [24,7 K], добавлен 20.10.2014

  • Основные определения поиска подстроки в строке. Простейшие алгоритмы поиска подстроки в строке. Алгоритмы последовательного поиска и Рабина-Карпа, создание и описание программы, реализующей их. Порядок работы с приложением. Тестирование алгоритмов.

    курсовая работа [2,7 M], добавлен 24.05.2012

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

    курсовая работа [236,7 K], добавлен 09.03.2009

  • Характеристика структурированного языка программирования С, его основных структурных компонентов, области памяти, библиотеки. Методы поиска в массивах данных. Описание программы, функции сортировки и меню выбора, последовательного и бинарного поиска.

    курсовая работа [1,7 M], добавлен 19.05.2014

  • Разработка программы на языке С#, которая будет заниматься построением бинарного дерева для исходных данных и их редактированием, поиском информации о товарах по заданному ключу. Графические схемы алгоритмов поиска и удаления элемента бинарного дерева.

    курсовая работа [796,9 K], добавлен 22.02.2016

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.