private void btnReg_Click(object sender, EventArgs e)
        {
            /* Если пароли НЕ пустые:
             * 1) Шифрование старого пароля по НОВОМУ ключу.
             * 2) Если зашифрованный старый пароль = зашифрованному паролю в файле:
             *  1) Генерация нового ключа.
             *  2) Шифрование нового пароля.
             *  3) Запись в файл.
             *  4) Открытие формы "LabelKeyForm1".
             * Если пароли пустые:
             * 1) Сообщение об ошибке.
             */
            if (txtPasOld.Text != "" || txtPasNew.Text != "")
            {
                string PasOld;   // Зашифрованный старый пароль по новому ключу.
                String UserData; // Сохранённый в файле (Зашифрованный) пароль.

                // Для считывания зашифрованного пароля из файла.
                UserData = b.ReadFromFile();

                // (1).
                PasOld = b.Encode(txtPasOld.Text, Func.Key);

                // (2)
                if (PasOld == UserData)
                {
                    string EncodePas; // Новый пароль.

                    // (1).
                    Func.Key = b.GenKey();

                    // (2).
                    EncodePas = b.Encode(txtPasNew.Text, Func.Key);

                    // (3).
                    b.WriteInFile(EncodePas);

                    // (4).
                    LabelKeyForm1 f = new LabelKeyForm1();

                    this.Hide();
                    f.ShowDialog();
                    this.Close();
                }
                else
                {
                    MessageBox.Show("Введённый пароль НЕ верен!");
                }
            }

            // (1).
            else if (txtPasOld.Text == "" || txtPasNew.Text == "")
            {
                MessageBox.Show("Одно (или оба) из полей для ввода пароля пустое!");
            }

            txtPasOld.Clear();
            txtPasNew.Clear();
        }
Example #2
0
        private void btnLog_Click(object sender, EventArgs e)
        {
            Functions b = new Functions();

            // Файл НЕ существует...
            if (!(File.Exists("E:\\3курс(5сем)\\ТОКБ\\WindowsFormsApp1\\test.txt")))
            {
                /*
                 *  1) Генерация ключа.
                 *  2) Шифрование пароля.
                 *  3) Запись в файл.
                 *  4) Открытие формы "LabelKeyForm1".
                 */
                string EncodePas;

                // (1).
                Functions.Key = b.GenKey(txtPas.Text.Length);

                // (2).
                EncodePas = b.Encode(txtPas.Text, Functions.Key);

                // (3).
                b.WriteInFile(EncodePas);

                // (4).
                LabelKeyForm1 f = new LabelKeyForm1();

                this.Hide();
                f.ShowDialog();
                this.Close();
            }
            // Файл существует.
            else
            {
                /*
                 *  1) Передача пароля в конструктор формы "KeyForm".
                 *  2) Открытие формы "KeyForm" для ввода ключа.
                 */

                // (1).
                KeyForm f = new KeyForm(this.txtPas.Text);

                // (2).
                this.Hide();
                f.ShowDialog();
                this.Close();
            }
        }
Example #3
0
        private void button1_Click(object sender, EventArgs e)
        {
            // Файл НЕ существует.
            if (!(File.Exists("\\test.txt")))
            {
                /*
                 *  1) Генерация ключа.
                 *  2) Шифрование пароля.
                 *  3) Запись в файл.
                 *  4) Открытие формы "LabelKeyForm1".
                 *  5) Открытие формы "LabelKeyForm1".
                 */
                string EncodePas;

                // (1).
                Func.Key = b.GenKey();

                // (2).
                EncodePas = b.Encode(txtPas.Text, Func.Key);

                // (3).
                b.WriteInFile(EncodePas);

                // (4).
                LabelKeyForm1 f = new LabelKeyForm1();

                // (5).
                this.Hide();
                f.ShowDialog();
                this.Close();
            }
            // Файл существует.
            else
            {
                /*
                 *  1) Передача пароля в конструктор формы "KeyForm".
                 *  2) Открытие формы "KeyForm" для ввода ключа.
                 */

                // (1).
                KeyForm f = new KeyForm(this.txtPas.Text);

                // (2).
                this.Hide();
                f.ShowDialog();
                this.Close();
            }
        }
Example #4
0
        private void btnReg_Click(object sender, EventArgs e)
        {
            if (txtPasOld.Text != "" || txtPasNew.Text != "")
            {
                string PasOld;   // Зашифрованный старый пароль по новому ключу.
                String UserData; // Сохранённый в файле (Зашифрованный) пароль.

                // Для считывания зашифрованного пароля из файла.
                UserData = b.ReadFromFile();

                // 1) Шифрование старого пароля по НОВОМУ ключу.
                PasOld = b.Encode(txtPasOld.Text, data);

                // 2) Если зашифрованный старый пароль = зашифрованному паролю в файле:
                if (PasOld == UserData)
                {
                    string EncodePas, Key; // Новый пароль, новый ключ.

                    // 1) Генерация нового ключа.
                    Key = b.GenKey();

                    // 2) Шифрование нового пароля.
                    EncodePas = b.Encode(txtPasNew.Text, Key);

                    // 3) Запись в файл.
                    b.WriteInFile(EncodePas);

                    // 4) Передача ключа в конструктор формы "LabelKeyForm1".
                    LabelKeyForm1 f = new LabelKeyForm1(Key);

                    // 5) Открытие формы "LabelKeyForm1".
                    this.Hide();
                    f.ShowDialog();
                    this.Close();
                }
                else
                {
                    MessageBox.Show("Введённый пароль НЕ верен!");
                }
            }
            else if (txtPasOld.Text == "" || txtPasNew.Text == "")
            {
                MessageBox.Show("Одно (или оба) из полей для ввода пароля пустое!");
            }
            txtPasOld.Clear();
            txtPasNew.Clear();
        }
Example #5
0
        private void button1_Click(object sender, EventArgs e)
        {
            // Файл НЕ существует.
            if (!(File.Exists("D:\\Univer\\ТОКБ\\WindowsFormsApp1\\Not_key.txt")))
            {
                string EncodePas, Key;

                // 1) Генерация ключа.
                Key = b.GenKey();

                // 2) Шифрование пароля.
                EncodePas = b.Encode(txtPas.Text, Key);

                // 3) Запись в файл.
                b.WriteInFile(EncodePas);

                // 4) Передача ключа в конструктор формы "LabelKeyForm1".
                LabelKeyForm1 f = new LabelKeyForm1(Key);

                // 5) Открытие формы "LabelKeyForm1".
                this.Hide();
                f.ShowDialog();
                this.Close();
            }
            // Файл существует.
            else
            {
                // 1) Передача пароля в конструктор формы "KeyForm".
                KeyForm f = new KeyForm(this.txtPas.Text);

                // 2) Открытие формы "KeyForm" для ввода ключа.
                this.Hide();
                f.ShowDialog();
                this.Close();
            }
        }
Example #6
0
        private void btnKey_Click(object sender, EventArgs e)
        {
            /*  1) Считывание пароля из файла.
             *  2) Шифрование принятого пароля "data = txtPas.Text".
             *  3) Проверка зашифрованного пароля и пароля в файле(3 попытки).
             *  Если Введёный == Сохранённый пароли сопадают:
             *  4) Генерация НОВОГО ключа.
             *  5) Шифрование пароля.
             *  6) Запись в файл.
             *  7) Передача ключа в конструктор формы "LabelKeyForm1".
             *  8) Открытие формы "LabelKeyForm1".
             *  Иначе
             *  4) Сообщение об ошибке(еще 2 попытки).
             *  5) Открытие формы "LogForm" для ввода пароля.
             */

            string EncodePas;      // Новый сгенерированный пароль.
            string EnterPas;       // Введёный (Зашифрованный) пароль.
            String UserData;       // Сохранённый в файле (Зашифрованный) пароль.

            if (txtKey.Text == "") // Если поле для ввода клча пустое.
            {
                MessageBox.Show("Поле ключа не может быть пустым!");
            }

            // (1).
            UserData = b.ReadFromFile();

            // Если длинна введенного пароля больше чем зашифрованного.
            // Такая проверка нужна потому что алгоритм не будет работать,
            // и если не обработать это условие ошибка вылезет в функции "Encode"(выход за границы массива).
            if ((data.Length > UserData.Length) || (data.Length < UserData.Length))
            {
                // (4).
                MessageBox.Show(String.Format("Неправильный пароль или ключ!\nОсталось попыток: {0}", Func.PopytkaNum));
                Func.PopytkaNum--;

                if (Func.PopytkaNum < 0)
                {
                    MessageBox.Show("Попытки закончились!");
                    Application.Exit();
                }

                LogForm f = new LogForm();

                // (5).
                this.Hide();
                f.ShowDialog();
                this.Close();
            }

            else
            {
                // (2).
                EnterPas = b.Encode(data, txtKey.Text);

                // (3).
                if (UserData == EnterPas) // Проверка Введённого и  Сохранённого в файле пароля.
                {
                    // (4).
                    Func.Key = b.GenKey();

                    // (5).
                    EncodePas = b.Encode(data, Func.Key);

                    // (6).
                    b.WriteInFile(EncodePas);

                    // (7).
                    LabelKeyForm1 f = new LabelKeyForm1();

                    // (8).
                    this.Hide();
                    f.ShowDialog();
                    this.Close();
                }
                else
                {
                    // (4).
                    MessageBox.Show(String.Format("Неправильный пароль или ключ!\nОсталось попыток: {0}", Func.PopytkaNum));
                    Func.PopytkaNum--;

                    if (Func.PopytkaNum < 0)
                    {
                        MessageBox.Show("Попытки закончились!");
                        Application.Exit();
                    }

                    LogForm f = new LogForm();

                    // (5).
                    this.Hide();
                    f.ShowDialog();
                    this.Close();
                }
            }
        }
Example #7
0
        private void button1_Click(object sender, EventArgs e)
        {
            Func.FlashDrive = comboBox1.Text.Remove(2);
            Func.Pas        = txtPas.Text;


            if (!(File.Exists("\\test.txt")))
            {
                string EncodePas;

                Func.Key = b.GenKey();

                EncodePas = b.Encode(txtPas.Text, Func.Key);

                b.WriteInFile(EncodePas);

                // запись на флешку
                SafeFileHandle handle = CreateFile(
                    lpFileName: @"\\.\" + Func.FlashDrive,
                    dwDesiredAccess: FileAccess.Read,
                    dwShareMode: FileShare.ReadWrite,
                    lpSecurityAttributes: IntPtr.Zero,
                    dwCreationDisposition: System.IO.FileMode.OpenOrCreate,
                    dwFlagsAndAttributes: FileAttributes.Normal,
                    hTemplateFile: IntPtr.Zero);

                using (FileStream disk = new FileStream(handle, FileAccess.Read))
                {
                    mbrData = new byte[512];
                    disk.Read(mbrData, 0, 512);
                }

                handle = CreateFile(
                    lpFileName: @"\\.\" + Func.FlashDrive,
                    dwDesiredAccess: FileAccess.Write,
                    dwShareMode: FileShare.ReadWrite,
                    lpSecurityAttributes: IntPtr.Zero,
                    dwCreationDisposition: System.IO.FileMode.OpenOrCreate,
                    dwFlagsAndAttributes: FileAttributes.Normal,
                    hTemplateFile: IntPtr.Zero);

                using (FileStream disk = new FileStream(handle, FileAccess.Write))
                {
                    for (int i = 0; i < EncodePas.Length; i++)
                    {
                        mbrData[384 + i] = (byte)EncodePas[i];
                    }

                    disk.Write(mbrData, 0, 512);
                }

                this.Hide();
                LabelKeyForm1 f = new LabelKeyForm1();
                f.ShowDialog();
                this.Close();
            }
            else
            {
                KeyForm f = new KeyForm();

                this.Hide();
                f.ShowDialog();
                this.Close();
            }
        }
Example #8
0
        private void button1_Click(object sender, EventArgs e)
        {
            Func.FlashDrive = comboBox1.Text.Remove(2);
            Func.Pas        = txtPas.Text;

            // Файл НЕ существует.
            if (!(File.Exists("\\test.txt")))
            {
                /*
                 *  1) Генерация ключа.
                 *  2) Шифрование пароля.
                 *  3) Запись в  файл.
                 *  4) Запись на флешку.
                 *  5) Открытие формы "LabelKeyForm1".
                 */
                string EncodePas;

                // (1).
                Func.Key = b.GenKey();

                // (2).
                EncodePas = b.Encode(txtPas.Text, Func.Key);

                // (3).
                b.WriteInFile(EncodePas);

                // (4).
                SafeFileHandle handle = CreateFile(
                    lpFileName: @"\\.\" + Func.FlashDrive,
                    dwDesiredAccess: FileAccess.Read,
                    dwShareMode: FileShare.ReadWrite,
                    lpSecurityAttributes: IntPtr.Zero,
                    dwCreationDisposition: System.IO.FileMode.OpenOrCreate,
                    dwFlagsAndAttributes: FileAttributes.Normal,
                    hTemplateFile: IntPtr.Zero);

                using (FileStream disk = new FileStream(handle, FileAccess.Read))
                {
                    mbrData = new byte[512];
                    disk.Read(mbrData, 0, 512);
                }

                handle = CreateFile(
                    lpFileName: @"\\.\" + Func.FlashDrive,
                    dwDesiredAccess: FileAccess.Write,
                    dwShareMode: FileShare.ReadWrite,
                    lpSecurityAttributes: IntPtr.Zero,
                    dwCreationDisposition: System.IO.FileMode.OpenOrCreate,
                    dwFlagsAndAttributes: FileAttributes.Normal,
                    hTemplateFile: IntPtr.Zero);

                using (FileStream disk = new FileStream(handle, FileAccess.Write))
                {
                    for (int i = 0; i < EncodePas.Length; i++)
                    {
                        mbrData[384 + i] = (byte)EncodePas[i];
                    }

                    disk.Write(mbrData, 0, 512);
                }

                // (5).
                this.Hide();
                LabelKeyForm1 f = new LabelKeyForm1();
                f.ShowDialog();
                this.Close();
            }
            // Файл существует.
            else
            {
                /*
                 *  1) Передача пароля в конструктор формы "KeyForm".
                 *  2) Открытие формы "KeyForm" для ввода ключа.
                 */

                // (1).
                KeyForm f = new KeyForm();

                // (2).
                this.Hide();
                f.ShowDialog();
                this.Close();
            }
        }
Example #9
0
        private void btnKey_Click(object sender, EventArgs e)
        {
            string EncodePas;
            string EnterPas;

            if (txtKey.Text == "")
            {
                MessageBox.Show("Поле ключа не может быть пустым!");
            }
            else
            {
                EnterPas = b.Encode(Func.Pas, txtKey.Text);

                if (txtPas.Text == EnterPas)
                {
                    Func.Key = b.GenKey();

                    EncodePas = b.Encode(Func.Pas, Func.Key);

                    b.WriteInFile(EncodePas);

                    SafeFileHandle handle = CreateFile(
                        lpFileName: @"\\.\" + Func.FlashDrive,
                        dwDesiredAccess: FileAccess.Read,
                        dwShareMode: FileShare.ReadWrite,
                        lpSecurityAttributes: IntPtr.Zero,
                        dwCreationDisposition: System.IO.FileMode.OpenOrCreate,
                        dwFlagsAndAttributes: FileAttributes.Normal,
                        hTemplateFile: IntPtr.Zero);

                    using (FileStream disk = new FileStream(handle, FileAccess.Read))
                    {
                        mbrData = new byte[512];
                        disk.Read(mbrData, 0, 512);
                    }

                    handle = CreateFile(
                        lpFileName: @"\\.\" + Func.FlashDrive,
                        dwDesiredAccess: FileAccess.Write,
                        dwShareMode: FileShare.ReadWrite,
                        lpSecurityAttributes: IntPtr.Zero,
                        dwCreationDisposition: System.IO.FileMode.OpenOrCreate,
                        dwFlagsAndAttributes: FileAttributes.Normal,
                        hTemplateFile: IntPtr.Zero);

                    using (FileStream disk = new FileStream(handle, FileAccess.Write))
                    {
                        for (int i = 0; i < EncodePas.Length; i++)
                        {
                            mbrData[384 + i] = (byte)EncodePas[i];
                        }

                        disk.Write(mbrData, 0, 512);
                    }

                    LabelKeyForm1 f = new LabelKeyForm1();

                    this.Hide();
                    f.ShowDialog();
                    this.Close();
                }
                else
                {
                    MessageBox.Show(String.Format("Неправильный пароль или ключ!\nОсталось попыток: {0}", Func.PopytkaNum));
                    Func.PopytkaNum--;

                    if (Func.PopytkaNum < 0)
                    {
                        MessageBox.Show("Попытки закончились!");
                        Application.Exit();
                    }

                    LogForm f = new LogForm();

                    this.Hide();
                    f.ShowDialog();
                    this.Close();
                }
            }
        }
Example #10
0
        private void btnKey_Click(object sender, EventArgs e)
        {
            /*
             *  2) Шифрование принятого пароля "data = txtPas.Text".
             *  3) Проверка зашифрованного пароля и пароляна флешке(3 попытки).
             *  Если Введёный == Сохранённый пароли сопадают:
             *  4) Генерация НОВОГО ключа.
             *  5) Шифрование пароля.
             *  6) Запись в файл.
             *  7) Запись на флешку.
             *  8) Передача ключа в конструктор формы "LabelKeyForm1".
             *  9) Открытие формы "LabelKeyForm1".
             *  Иначе
             *  4) Сообщение об ошибке(еще 2 попытки).
             *  5) Открытие формы "LogForm" для ввода пароля.
             */

            string EncodePas;      // Новый сгенерированный пароль.
            string EnterPas;       // Введёный (Зашифрованный) пароль.

            if (txtKey.Text == "") // Если поле для ввода клча пустое.
            {
                MessageBox.Show("Поле ключа не может быть пустым!");
            }

            else
            {
                // (2).
                EnterPas = b.Encode(Func.Pas, txtKey.Text);

                // (3).
                if (txtPas.Text == EnterPas) // Проверка Введённого и  Сохранённого пароля.
                {
                    // (4).
                    Func.Key = b.GenKey();

                    // (5).
                    EncodePas = b.Encode(Func.Pas, Func.Key);

                    // (6).
                    b.WriteInFile(EncodePas);

                    SafeFileHandle handle = CreateFile(
                        lpFileName: @"\\.\" + Func.FlashDrive,
                        dwDesiredAccess: FileAccess.Read,
                        dwShareMode: FileShare.ReadWrite,
                        lpSecurityAttributes: IntPtr.Zero,
                        dwCreationDisposition: System.IO.FileMode.OpenOrCreate,
                        dwFlagsAndAttributes: FileAttributes.Normal,
                        hTemplateFile: IntPtr.Zero);

                    using (FileStream disk = new FileStream(handle, FileAccess.Read))
                    {
                        mbrData = new byte[512];
                        disk.Read(mbrData, 0, 512);
                    }

                    handle = CreateFile(
                        lpFileName: @"\\.\" + Func.FlashDrive,
                        dwDesiredAccess: FileAccess.Write,
                        dwShareMode: FileShare.ReadWrite,
                        lpSecurityAttributes: IntPtr.Zero,
                        dwCreationDisposition: System.IO.FileMode.OpenOrCreate,
                        dwFlagsAndAttributes: FileAttributes.Normal,
                        hTemplateFile: IntPtr.Zero);

                    using (FileStream disk = new FileStream(handle, FileAccess.Write))
                    {
                        for (int i = 0; i < EncodePas.Length; i++)
                        {
                            mbrData[384 + i] = (byte)EncodePas[i];
                        }

                        disk.Write(mbrData, 0, 512);
                    }

                    // (7).
                    LabelKeyForm1 f = new LabelKeyForm1();

                    // (8).
                    this.Hide();
                    f.ShowDialog();
                    this.Close();
                }
                else
                {
                    // (4).
                    MessageBox.Show(String.Format("Неправильный пароль или ключ!\nОсталось попыток: {0}", Func.PopytkaNum));
                    Func.PopytkaNum--;

                    if (Func.PopytkaNum < 0)
                    {
                        MessageBox.Show("Попытки закончились!");
                        Application.Exit();
                    }

                    LogForm f = new LogForm();

                    // (5).
                    this.Hide();
                    f.ShowDialog();
                    this.Close();
                }
            }
        }
Example #11
0
        private void btnReg_Click(object sender, EventArgs e)
        {
            /* Если пароли НЕ пустые:
             * 1) Шифрование старого пароля по НОВОМУ ключу.
             * 2) Если зашифрованный старый пароль = зашифрованному паролю в файле:
             *  1) Генерация нового ключа.
             *  2) Шифрование нового пароля.
             *  3) Запись в файл.
             *  4) Запись на флешку.
             *  5) Открытие формы "LabelKeyForm1".
             * Если пароли пустые:
             * 1) Сообщение об ошибке.
             */
            if (txtPasOld.Text != "" || txtPasNew.Text != "")
            {
                string PasOld; // Зашифрованный старый пароль по новому ключу.

                // (1).
                PasOld = b.Encode(txtPasOld.Text, Func.Key);

                // (2)
                if (PasOld == txtPas.Text)
                {
                    string EncodePas; // Новый пароль.

                    // (1).
                    Func.Key = b.GenKey();

                    // (2).
                    EncodePas = b.Encode(txtPasNew.Text, Func.Key);

                    // (3).
                    b.WriteInFile(EncodePas);

                    // (4).
                    SafeFileHandle handle = CreateFile(
                        lpFileName: @"\\.\" + Func.FlashDrive,
                        dwDesiredAccess: FileAccess.Read,
                        dwShareMode: FileShare.ReadWrite,
                        lpSecurityAttributes: IntPtr.Zero,
                        dwCreationDisposition: System.IO.FileMode.OpenOrCreate,
                        dwFlagsAndAttributes: FileAttributes.Normal,
                        hTemplateFile: IntPtr.Zero);

                    using (FileStream disk = new FileStream(handle, FileAccess.Read))
                    {
                        mbrData = new byte[512];
                        disk.Read(mbrData, 0, 512);
                    }

                    handle = CreateFile(
                        lpFileName: @"\\.\" + Func.FlashDrive,
                        dwDesiredAccess: FileAccess.Write,
                        dwShareMode: FileShare.ReadWrite,
                        lpSecurityAttributes: IntPtr.Zero,
                        dwCreationDisposition: System.IO.FileMode.OpenOrCreate,
                        dwFlagsAndAttributes: FileAttributes.Normal,
                        hTemplateFile: IntPtr.Zero);

                    using (FileStream disk = new FileStream(handle, FileAccess.Write))
                    {
                        for (int i = 0; i < EncodePas.Length; i++)
                        {
                            mbrData[384 + i] = (byte)EncodePas[i];
                        }

                        disk.Write(mbrData, 0, 512);
                    }

                    // (4).
                    LabelKeyForm1 f = new LabelKeyForm1();

                    this.Hide();
                    f.ShowDialog();
                    this.Close();
                }
                else
                {
                    MessageBox.Show("Введённый пароль НЕ верен!");
                }
            }

            // (1).
            else if (txtPasOld.Text == "" || txtPasNew.Text == "")
            {
                MessageBox.Show("Одно (или оба) из полей для ввода пароля пустое!");
            }

            txtPasOld.Clear();
            txtPasNew.Clear();
        }
Example #12
0
        private void btnKey_Click(object sender, EventArgs e)
        {
            string Key, EncodePas; // Новый ключ сгенерированный пароль к нему.
            string EnterPas;       // Введёный (Зашифрованный) пароль.
            String UserData;       // Сохранённый в файле (Зашифрованный) пароль.

            // 1) Считывание пароля из файла.
            UserData = b.ReadFromFile();

            // Если длинна введенного пароля больше для зашифрованного.
            //Такая проверка нужна потому что алгоритм не будет работать.
            if (data.Length > UserData.Length)
            {
                // 4) Сообщение об ошибке(еще 2 попытки).
                MessageBox.Show(String.Format("Неправильный пароль или ключ!\nОсталось попыток: {0}", PopytkaNum));
                PopytkaNum--;

                LogForm f = new LogForm();

                // 5) Открытие формы "LogForm" для ввода пароля.
                this.Hide();
                f.ShowDialog();
                this.Close();

                if (PopytkaNum < 0)
                {
                    MessageBox.Show("Попытки закончились!");
                    this.Close();
                }
            }

            // 2) Шифрование принятого пароля "data = txtPas.Text".
            EnterPas = b.Encode(data, txtKey.Text);

            // 3) Проверка зашифрованного пароля и пароля в файле(3 попытки).
            if (UserData == EnterPas) // Проверка Введённого и  Сохранённого в файле пароля.
            {
                // 4) Генерация НОВОГО ключа.
                Key = b.GenKey();

                // 5) Шифрование пароля.
                EncodePas = b.Encode(data, Key);

                // 6) Запись в файл.
                b.WriteInFile(EncodePas);

                // 7) Передача ключа в конструктор формы "LabelKeyForm1".
                LabelKeyForm1 f = new LabelKeyForm1(Key);

                // 8) Открытие формы "LabelKeyForm1".
                this.Hide();
                f.ShowDialog();
                this.Close();
            }
            else
            {
                // 4) Сообщение об ошибке(еще 2 попытки).
                MessageBox.Show(String.Format("Неправильный пароль или ключ!\nОсталось попыток: {0}", PopytkaNum));
                PopytkaNum--;

                LogForm f = new LogForm();

                // 5) Открытие формы "LogForm" для ввода пароля.
                this.Hide();
                f.ShowDialog();
                this.Close();

                if (PopytkaNum < 0)
                {
                    MessageBox.Show("Попытки закончились!");
                    this.Close();
                }
            }
        }
Example #13
0
        private void btnReg_Click(object sender, EventArgs e)
        {
            if (txtPasOld.Text != "" || txtPasNew.Text != "")
            {
                string PasOld;

                PasOld = b.Encode(txtPasOld.Text, Func.Key);

                if (PasOld == txtPas.Text)
                {
                    string EncodePas;

                    Func.Key = b.GenKey();

                    EncodePas = b.Encode(txtPasNew.Text, Func.Key);

                    b.WriteInFile(EncodePas);

                    SafeFileHandle handle = CreateFile(
                        lpFileName: @"\\.\" + Func.FlashDrive,
                        dwDesiredAccess: FileAccess.Read,
                        dwShareMode: FileShare.ReadWrite,
                        lpSecurityAttributes: IntPtr.Zero,
                        dwCreationDisposition: System.IO.FileMode.OpenOrCreate,
                        dwFlagsAndAttributes: FileAttributes.Normal,
                        hTemplateFile: IntPtr.Zero);

                    using (FileStream disk = new FileStream(handle, FileAccess.Read))
                    {
                        mbrData = new byte[512];
                        disk.Read(mbrData, 0, 512);
                    }

                    handle = CreateFile(
                        lpFileName: @"\\.\" + Func.FlashDrive,
                        dwDesiredAccess: FileAccess.Write,
                        dwShareMode: FileShare.ReadWrite,
                        lpSecurityAttributes: IntPtr.Zero,
                        dwCreationDisposition: System.IO.FileMode.OpenOrCreate,
                        dwFlagsAndAttributes: FileAttributes.Normal,
                        hTemplateFile: IntPtr.Zero);

                    using (FileStream disk = new FileStream(handle, FileAccess.Write))
                    {
                        for (int i = 0; i < EncodePas.Length; i++)
                        {
                            mbrData[384 + i] = (byte)EncodePas[i];
                        }

                        disk.Write(mbrData, 0, 512);
                    }
                    LabelKeyForm1 f = new LabelKeyForm1();

                    this.Hide();
                    f.ShowDialog();
                    this.Close();
                }
                else
                {
                    MessageBox.Show("Неправильный пароль!");
                }
            }

            // (1).
            else if (txtPasOld.Text == "" || txtPasNew.Text == "")
            {
                MessageBox.Show("Одно (или оба) из полей для ввода пароля пустое!");
            }

            txtPasOld.Clear();
            txtPasNew.Clear();
        }