2016-07-17 8 views
2

Я работаю над проектом в Raspberry Pi 2, работающем под Windows 10 IoT Core. Вызов датчика объекта проекта с открытием видео. Но я получаю следующее сообщение об ошибке:Windows 10 IoT Core - видеоролик закрыт

An exception of type 'System.Exception' occurred in ProjeVol1.exe but was not handled in user code

Additional information: The application called an interface that was marshalled for a different thread. (Exception from HRESULT: 0x8001010E (RPC_E_WRONG_THREAD))

Код:

private void SensorPin_ValueChanged(GpioPin sender, GpioPinValueChangedEventArgs args) 
{ 
    Debug.WriteLine("Sensor Tetiklendi"); 
    if (args.Edge == GpioPinEdge.FallingEdge) 
    { 
     Debug.WriteLine("Falling Edge"); 
     ledPin.Write(GpioPinValue.High); 
     VideoAc(); 

    } 
    else if (args.Edge == GpioPinEdge.RisingEdge) 
    { 
     Debug.WriteLine("Rising Edge"); 
     ledPin.Write(GpioPinValue.High); 

    } 
} 


public void VideoAc() 
{ 
    video.AutoPlay = true; 
    video.Play(); 
    video.MediaEnded += Video_MediaEnded; 
} 

ответ

2

Вероятно событие датчика происходит от другого потока, чем пользовательский интерфейс один, и что получает рамки сердится.

Попробуйте заключить VideoAc вызов в диспетчерскую синхронизации, как описано в этой части: UWP update UI from Task

await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal,() => { 
    VideoAc(); 
}); 
+0

Спасибо, я пытаюсь его. –

Смежные вопросы