Windows Media Center의 플러그인에서 비디오를 재생할 때 Null Media Experienk
-
20-09-2019 - |
문제
Windows Media Center 플러그인에서는 PlayMedia API를 사용하여 비디오를 재생합니다. 이것은 비디오 재생을 위해 MS의 문서화 된 API이며 SDK에 문서화되어 있습니다.
예를 들어.
AddInHost.Current.MediaCenterEnvironment.PlayMedia(Microsoft.MediaCenter.MediaType.Video, path, false)
Vista에서 일관되게,이 호출 후에 우리는 미디어 경험이 있습니다.
그러나 창에서 7 가지가 조금 더 있습니다 이상한 사람 그리고 MediaExperience는 일정 시간 또는 특정 임의의 행동 후에 La-La 토지로가는 것으로 보입니다.
Window 7에서 지속적으로 비디오를 재생하고 전체 화면으로 이동하려면 어떻게해야합니까?
이 API가 지속적으로 100% 작동하도록하는 해결 방법이 있습니까?
원격 채널이 단지 죽거나 무언가가있는 것 같습니다.
해결책
다른 경우 불쌍한 영혼 이 문제가 있습니다. 여기에 Win 7의 해결 방법이 있습니다. MS는이 문제를 해결할 때 정말 느 렸습니다.
var mce = AddInHost.Current.MediaCenterEnvironment.MediaExperience;
// great window 7 has bugs, lets see if we can work around them
if (mce == null) {
System.Threading.Thread.Sleep(200);
mce = AddInHost.Current.MediaCenterEnvironment.MediaExperience;
if (mce == null) {
try {
var fi = AddInHost.Current.MediaCenterEnvironment.GetType()
.GetField("_checkedMediaExperience", BindingFlags.NonPublic | BindingFlags.Instance);
if (fi != null) {
fi.SetValue(AddInHost.Current.MediaCenterEnvironment, false);
mce = AddInHost.Current.MediaCenterEnvironment.MediaExperience;
}
} catch (Exception e) {
// give up ... I do not know what to do
Logger.ReportException("AddInHost.Current.MediaCenterEnvironment.MediaExperience is null", e);
}
}
제휴하지 않습니다 StackOverflow