AccessViolationException при доступе к цвету пикселя с помощью WriteableBitmapEx

Я использую библиотеку WriteableBitmapEx для редактирования изображения, снятого камерой планшета с Windows 8 Pro. Я получаю AccessViolationException каждый раз, когда я вызываю функцию GetPixel(), вот код:

Windows.Media.Capture.MediaCapture captureMgr = new MediaCapture();
await captureMgr.InitializeAsync();

IRandomAccessStream memoryStream = new InMemoryRandomAccessStream();
await captureMgr.CapturePhotoToStreamAsync(imageProperties, memoryStream);
await memoryStream.FlushAsync();
memoryStream.Seek(0);

WriteableBitmap tmpImage = new WriteableBitmap(1, 1); 
tmpImage.SetSource(memoryStream);
tmpImage.GetPixel(1, 1); // An AccessViolationException occurs.

Что я делаю неправильно?


person Branyac    schedule 19.04.2013    source источник


Ответы (1)


Вместо этого попробуйте использовать встроенные методы для создания WriteableBitmap.

WriteableBitmap tmpImage = await BitmapFactory.New(1, 1).FromStream(memoryStream);  
tmpImage.GetPixel(1, 1);

Это должно гарантировать, что ваше изображение было загружено в WriteableBitmap перед доступом к нему.

person keyboardP    schedule 19.04.2013