using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;

namespace Password_CS
{
    public partial class Form1 : Form
    {
        // Функция для установления нового системного пароля
        [DllImport("coredll.dll")]
        private static extern bool SetPassword(string lpszOldpassword, string lspzNewPassword);

        // Функция для активации или блокировки текущего пароля
        [DllImport("coredll.dll")]
        private static extern bool SetPasswordActive(bool bActive, string lpszPassword);

        // Функция для определения текущего состояния пароля
        [DllImport("coredll.dll")]
        private static extern bool GetPasswordActive();

        // Функция для проверки пароля
        [DllImport("coredll.dll")]
        private static extern bool CheckPassword(string lpszPassword);

        public Form1()
        {
            InitializeComponent();
            #if DEBUG
                MinimizeBox = false;
            #else       
                MinimizeBox = true;
            #endif
        }

        private void butCheckPass_Click(object sender, EventArgs e)
        {
            txtInfo.Text ="Активность пароля: " + GetPasswordActive().ToString();
        }

        private void butNewPass_Click(object sender, EventArgs e)
        {
            MessageBox.Show("Установка нового пароля " + SetPassword("Активность пароля: False", txtInfo.Text).ToString());
        }

        private void butSetState_Click(object sender, EventArgs e)
        {
            MessageBox.Show("Отключение пароля: " + SetPasswordActive(false, txtInfo.Text).ToString());
        }

        private void butFindPass_Click(object sender, EventArgs e)
        {
            MessageBox.Show("Угадали пароль? " + CheckPassword(txtInfo.Text).ToString());
        }
    }
}