@a63826ndrew
Студент, новичок в Python

Как обработать исключение?

Здравствуйте!
Имеется приложение и сервер, оба написаны на языке C#. На форме есть picturebox и кнопка, при нажатии на которую формиуется sql-запрос с SELECT, этот запрос отправляется серверу, далее сервер вытаскивает из базы данных картинку как массив байт, отправляет этот массив байт обратно приложению, и после того как приложение получит этот массив байт, надо отобразить это массив байт в картинку в picturebox.
В этом куске кода происходит пердача запроса серверу на взятие картинки:
stream = Client.GetStream();
string Message3 = $"SELECT Image FROM users WHERE Login = '{LoginField.Text}'";
byte[] command3 = Encoding.UTF8.GetBytes(Message3);
stream.Write(command3, 0, command3.Length);

В этом куске кода происходит взятие картинки сервером после получения запроса и отправка ее обратно:
byte[] cmd = new byte[64];
                        StringBuilder builder = new StringBuilder();
                        int bytes = 0;
                        do
                        {
                            bytes = stream.Read(cmd, 0, cmd.Length);
                            builder.Append(Encoding.UTF8.GetString(cmd, 0, bytes));
                        }
                        while (stream.DataAvailable);

                        string message = builder.ToString();
                        Console.WriteLine(message);
                        stream.Flush();
                        if (message.Contains("SELECT"))
                        {
                         if (message.Contains("Image"))
                        {
                         SqliteConnection connect = new SqliteConnection("Data source = accounts.db");
                                connect.Open();
                                SqliteCommand command = new SqliteCommand(message, connect);
                                command.ExecuteNonQuery();
                                SqliteDataReader Reader = command.ExecuteReader();
                                while (Reader.Read())
                                {
                                    if ((string)Reader["Image"] == "")
                                    {
                                        string foto = null;
                                        byte[] image = Encoding.UTF8.GetBytes(foto);
                                        Console.WriteLine(image);
                                        stream.Write(image, 0, image.Length);
                                    }
                                    else
                                    {
                                        string foto = (string)Reader["Image"];
                                        byte[] image = Convert.FromBase64String(foto);
                                        Console.WriteLine(image);
                                        stream.Write(image, 0, image.Length);
                                    }
                                }
                         }

В этом куске кода происходит получение отправленной картинки и ее отображение в picturebox:
byte[] GetData3 = new byte[128];

            MemoryStream memoryStream = new MemoryStream(GetData3);
            pictureBox1.Image = Image.FromStream(memoryStream);

И вот в этой строчке
pictureBox1.Image = Image.FromStream(memoryStream);

вылазит исключение:
System.Argument.Expection: Недопустимый параметр.

По какой причине таоке исключение могло появиться и как его исправить?
  • Вопрос задан
  • 60 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы