Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсова зпз_шевчук.docx
Скачиваний:
33
Добавлен:
24.12.2018
Размер:
629.15 Кб
Скачать

Перелік посилань

  1. Бродин В.Б., Шагурин И.И. Микропроцессор i486. Архитектура, программирование, интерфейс. - М.: «ДИАЛОГ-МИФИ», 1993. - 240 с.

  2. Касперский Е. Компьютерные вирусы.: Издательство «ЭДЭЛЬ2004.- 176 с.

  3. Фролов А.В., Фролов Г.В. Аппаратное обеспечение персонального компьютера. - М.: ДИАЛОГ-МИФИ, 1997. - 304 с. - (Библиотека системного программиста; Т. 33)

  4. Правиков Д.И. Ключевые дискеты. Разработка элементов систем защиты от несанкционированного копирования. – М.: Радио и связь, 1995. – 128 с.: ил.

  5. Дудатьєв А.В., Каплун В.А., Семеренко В.П. Захист програмного забезпечення. Частина 1. Навчальний посібник. – Вінниця: ВНТУ, 2005.- 140с.

  6. Глущаком С.В., Харичов Т.С., Соболев Р.О. Секреты хакеров. Защита и атака. – Харьков: Фолио, 2004. – 414 с.

  7. Мартынов Н.Н., С# для начинающих, КУДИЦ-ПРЕСС, 2007- 447 с.: ил.

Додатки Додаток а Модуль захисту програмного забезпечення

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 System.Management;

using System.IO;

namespace WindowsFormsApplication1

{

public partial class Form1 : Form

{

string ActKey="";

example exp = new example();

public Form1()

{

InitializeComponent();

}

private static string GetID()

{

string str = "", str1 = "", str2 = "", str3 = "";

ManagementObjectSearcher searcher =

new ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive");

foreach (ManagementObject queryObj in searcher.Get())

{

str = queryObj["Model"].ToString(); ;

str1 = queryObj["Size"].ToString();

str2 = queryObj["SectorsPerTrack"].ToString();

str3 = queryObj["SerialNumber"].ToString();

break;

}

return str + str1 + str2 + str3;

}

public static string ACT(string ID)

{

string ActCode = "";

string Code = "";

for (int i = 0; i <= ID.Length - 1; i++)

{

Code += (Int32)ID[i] % 10;

}

for (int i = 0; i < 7; i++)

{

ActCode += Code[(int)Math.Pow(2, i)];

}

return ActCode;

}

private void button1_Click(object sender, EventArgs e)

{

if (textBox1.Text == ACT(GetID()))

{

File.WriteAllText("Key", textBox1.Text);

exp.ShowDialog();

this.Close();

}

else

{

MessageBox.Show("Не вірний код активації");

}

}

private void Form1_Load(object sender, EventArgs e)

{

if (File.Exists("Key"))

ActKey = File.ReadAllText("Key");

if (ActKey == ACT(GetID()))

{

exp.ShowDialog();

this.Close();

}

}

}

}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]