在我的运行在ARM平板电脑(即Surface)上的WinRT应用程序中,我试图从加速计传感器获取事件,但它无法正常工作。我以这种方式附加它,基本上来自微软的例子:
mAccelerometer = Accelerometer::GetDefault();
mListenerToken = mAccelerometer->ReadingChanged::add(ref new TypedEventHandler<Accelerometer^, AccelerometerReadingChangedEventArgs^>(this, &AccelerometerWin8Delegate::ReadingChanged));
不幸的是,这不起作用。当加速度计事件发生时,我没有调用我的处理程序,而是在输出中收到错误消息。
First-chance exception at 0x7539396B (KernelBase.dll) in EAMTestApp.exe: 0x40080202: WinRT transform error (parameters: 0x80004002, 0x00000000, 0x00000027, 0x04B1F280).
KernelBase.dll!7539396a()
中抛出异常知道可能导致这种情况的原因是什么?错误消息非常神秘。
我在Surface上运行了Microsoft示例here,没有任何问题。