Сохранение изображения в MemoryStream - общая ошибка GDI +

Обзор моего приложения: на стороне клиента серия снимков сделана с веб-камеры. При отправке я хочу, чтобы изображения были преобразованы в байтовый массив, и чтобы этот байтовый массив был отправлен в службу, которую я написал.

Моя проблема: я пытаюсь сохранить одно изображение вMemoryStream, но он продолжает ломаться, выплевывая сообщение,"A generic error occured in GDI+." Когда я копаю глубже, я вижу, что исключение выдается, когда позиция буфера в MemoryStream равна 54. К сожалению, это1.2 mb Фото. Вот блок кода:

// Create array of MemoryStreams
var imageStreams = new MemoryStream[SelectedImages.Count];
for (int i = 0; i < this.SelectedImages.Count; i++)
{   
    System.Drawing.Image image = BitmapFromSource(this.SelectedImages[i]);
    imageStreams[i] = new MemoryStream();
    image.Save(imageStreams[i], ImageFormat.Bmp); /* Error is thrown here! */
}

// Combine MemoryStreams into a single byte array (Threw this 
// in in case somebody has a better approach)
byte[] bytes = new byte[imageStreams.Sum(s => s.Length)];
for(int i = 0; i < imageStreams.Length; i++)
{
    bytes.Concat(imageStreams[i].ToArray());
}

А вот мой метод BitmapFromSource

// Converts a BitmapSource object to a Bitmap object
private System.Drawing.Image BitmapFromSource(BitmapSource source)
{
    System.Drawing.Image bitmap;

    using (MemoryStream ms = new MemoryStream())
    {
        BitmapEncoder encoder = new BmpBitmapEncoder();
        encoder.Frames.Add(BitmapFrame.Create(source));
        encoder.Save(ms);
        bitmap = new System.Drawing.Bitmap(ms);
    }
    return bitmap;
}

Многое из того, что я прочитал об Общей ошибке GDI +, указывает на проблему с разрешениями, но я не вижу, как это применимо, учитывая, что я не сохраняю файл в файловую систему. Кроме того, я видел, что эта ошибка может возникать из-за закрытия MemoryStream до сохранения изображения, но я также не вижу, как это будет применяться, учитывая, что я создаю MemoryStream непосредственно перед сохранением изображения. Любое понимание будет с благодарностью.

Ответы на вопрос(2)

Ваш ответ на вопрос