2016-07-17 35 views
2

Ich habe Projekt in Raspberry Pi 2 mit Windows 10 IoT Core gearbeitet. Projizieren Sie die Sensorauslösung mit einem geöffneten Video. Aber ich erhalte die folgenden Fehler:Windows 10 IoT Core - Video geöffnet schließen

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))

Code:

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; 
} 

Antwort

2

wahrscheinlich das Sensor-Ereignis von einem anderen Thread kommt als der UI ein, und das wird der Rahmen wütend.

Versuchen Sie, den VideoAc Anruf in einer Dispatcher-Synchronisation umschließen, wie in diesem Stück erklärt: UWP update UI from Task

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

Danke, ich versuche es. –