我从 Windows Phone 开发中心下载了这个基本的相机示例代码。然后,在那个项目中,我在方法的顶部添加了这些行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);
. msdn 上的相关故障排除异常页面说
如果调用方法失败是由无效参数以外的原因引起的,则会引发 InvalidOperationException 异常。当无法调用基础 Win32 方法时,.NET Framework 方法可能会引发此问题。
该故障排除页面上还提到,图形对象无法从声明它们的外部线程访问。但是,这是一个基本应用程序,在一个线程上运行。
我完全是在 Windows Phone 上开发应用程序的初学者,无法弄清楚这个异常的原因。请就异常原因提出建议。