基本的Windows Phone 8相机应用程序中的InvalidOperationException

时间:2012-11-28 06:08:22

标签: c# .net windows-phone-8

我从Windows Phone开发人员中心下载了此basic camera sample code。然后,在该项目中,我在void cam_CaptureImageAvailable(Object sender, Microsoft.Devices.ContentReadyEventArgs e)方法的顶部添加了这些行。这里的变量cam是PhotoCamera类型。

Size camRes = cam.PreviewResolution;
int[] imgdata = new int[(int)((camRes.Height*camRes.Width)+1)];
cam.GetPreviewBufferArgb32(imgdata);
//Code to perform manipulations on the frame follows

我在cam.GetPreviewBufferArgb32(imgdata);上收到了InvalidOperationException。 msdn上的relevant troubleshooting exceptions page表示

  

如果调用方法失败是由无效参数以外的原因引起的,则会引发InvalidOperationException异常。当无法调用基础Win32方法时,.NET Framework方法可能会抛出这种情况。

在故障排除页面上还提到,无法从声明它们的外部线程访问图形对象。但是,这是一个基本的应用程序并在一个线程上运行。

我是在Windows Phone上开发应用程序的完全初学者,无法找出此异常的原因。请提供异常原因的建议。

1 个答案:

答案 0 :(得分:0)

可以通过生成另一个获取this sample预览框架的线程来解决。