private void UseKnownСBox_CheckedChanged(object sender, EventArgs e) { switch (UseKnownСBox.Checked) { case true: if (GenParams.Encrypt == null || GenParams.Exp == null || GenParams.N == 0) { MessageBox.Show("Сначала сгенерируйте параметры."); UseKnownСBox.Checked = false; return; } EncryptInputTBox.Enabled = EInputTBox.Enabled = NInputTBox.Enabled = false; EncryptInputTBox.Text = GenParams.Encrypt.c.ToString(); EInputTBox.Text = GenParams.Exp.result.ToString(); NInputTBox.Text = GenParams.N.ToString(); break; case false: EncryptInputTBox.Enabled = EInputTBox.Enabled = NInputTBox.Enabled = true; EncryptInputTBox.Clear(); EInputTBox.Clear(); NInputTBox.Clear(); break; } }
private void button2_Click(object sender, EventArgs e) { try { MainFornLink.GTabControl.Enabled = false; MainFornLink.CancelPanel.Visible = true; BigInteger c; BigInteger exp; BigInteger n; if (!BigInteger.TryParse(EncryptInputTBox.Text, out c)) { MessageBox.Show("Недопустимые входные данные параметра (c)"); EncryptInputTBox.Clear(); return; } ; if (!BigInteger.TryParse(EInputTBox.Text, out exp)) { MessageBox.Show("Недопустимые входные данные параметра (e)"); EInputTBox.Clear(); return; } ; if (!BigInteger.TryParse(NInputTBox.Text, out n)) { MessageBox.Show("Недопустимые входные данные параметра (n)"); NInputTBox.Clear(); return; } ; Task.Factory.StartNew(() => { var items = CyclicCrack.Crack(c, exp, n); MainFornLink.BeginInvoke(new Action(() => { CrackDataLView.Items.Clear(); CrackDataLView.Items.AddRange(items.ToList().ConvertAll(i => new ListViewItem() { Text = i.Key, SubItems = { i.Value.ToString() } }).ToArray()); MainFornLink.GTabControl.Enabled = true; MainFornLink.CancelPanel.Visible = false; })); }); } catch (Exception) { MainFornLink.GTabControl.Enabled = true; MainFornLink.CancelPanel.Visible = false; //ignored } }