private void Send(byte[] data) { if (shareForm != null) { MessageBox.Show("Идет отправка другого сообщения. Попробуйте позднее."); return; } if (!serialPort1.IsOpen) { MessageBox.Show("Выберите порт"); return; } byte[] sharing = Encrypt(data, KeyTextBox.Text); sharing = RSCoder.Encode(sharing); shareForm = new ShareForm(serialPort1, sharing, ping, this); shareForm.Show(); }
private byte[] Take() { if (!serialPort1.IsOpen) { MessageBox.Show("Выберите порт"); return(null); } byte[] data = new byte[recd.Count]; for (int i = 0; i < data.Length; i++) { data[i] = recd[i]; } recd.Clear(); if (data.Length == 0) { return(null); } try { byte[] old = data; data = RSCoder.Decode(data); if (old[0] == 255) { MessageBox.Show("При обмене данными произошли ошибки"); } } catch (Exception) { MessageBox.Show("Данные искажены слишком сильно для декодирования"); data = null; } data = Decrypt(data, KeyTextBox.Text); return(data); }