반응형
이미지 전달
ImageToSHA512 Exception: System.Runtime.InteropServices.ExternalException (0x80004005): GDI+에서 일반 오류가 발생했습니다.
스트림독 플러그인 작업 중, MemoryStream을 사용해서 저장된 비트맵 이미지를 키로 전송할 때 위와 같은 오류가 발생한다. 이미지를 최종 사용할 때 메모리스트림에 접근해야 하는데, 스트림독은 Base64 통신이다. 그래서 플러그인의 메모리에 직접 접근이 불가능하다.
방법은 메모리스트림에 저장된 이미지를 비트맵으로 저장 후 전달하면 된다.
변경 전
using (MemoryStream ms = new MemoryStream())
{
chart1.SaveImage(ms, ChartImageFormat.Bmp);
image = Image.FromStream(ms);
}
변경 후
using (MemoryStream ms = new MemoryStream())
{
chart1.SaveImage(ms, ChartImageFormat.Bmp);
using (var bitmap = new Bitmap(ms))
{
image = new Bitmap(bitmap);
}
}
반응형