public void BDGenerateKey(string username) { DialogResult dialogResult1 = MessageBox.Show("При генерации нового ключа необходимо сменить пароль. Все документы будут удалены.\nВы уверены, что хотите сгенерировать новый ключ?", "Генерация ключа", MessageBoxButtons.YesNo); if (dialogResult1 == DialogResult.No) { return; } Crypt crypt = new Crypt(); string key = crypt.GenerateKey(); DB db = new DB(); SQLiteCommand command = new SQLiteCommand("SELECT password FROM users WHERE login = @uL", db.getConnection()); command.Parameters.AddWithValue("@uL", username).Size = 50; SQLiteCommand command1 = new SQLiteCommand($"UPDATE users SET cryptokey=@uK WHERE login = @uL", db.getConnection()); command1.Parameters.AddWithValue("@uK", key).Size = crypt.keyLength; command1.Parameters.AddWithValue("@uL", username).Size = 50; SQLiteCommand command2 = new SQLiteCommand($"DELETE FROM {username}", db.getConnection()); db.openConnection(); string result = command.ExecuteScalar().ToString(); command2.ExecuteNonQuery(); if (command1.ExecuteNonQuery() == 1) { MessageBox.Show($"Новый ключ для пользователя {username} успешно сгенерирован"); } else { MessageBox.Show("Произошла ошибка при генерации ключа"); } db.closeConnection(); PassChangeNoConfim passChangeNoConfim = new PassChangeNoConfim(); passChangeNoConfim.username = username; DialogResult dr = new DialogResult(); db.openConnection(); while (dr != DialogResult.OK || command.ExecuteScalar().ToString() == result) { dr = passChangeNoConfim.ShowDialog(); } db.closeConnection(); }
private void ibEdit_Click(object sender, EventArgs e) { if (lbUsers.SelectedItem == null) { return; } PassChangeNoConfim passChangeNoConfim = new PassChangeNoConfim(); passChangeNoConfim.username = Convert.ToString(lbUsers.SelectedItem); DialogResult dr = new DialogResult(); dr = passChangeNoConfim.ShowDialog(); if (dr == DialogResult.OK) { SetUsers(); } }