Я попытался сделать приложение удаленного взаимодействия проигрывателя Windows Media на C ++ с помощью этого руководства: Удаленное управление проигрывателем Windows Media. Тем не менее, даже если я верну «Remote» в GetServiceType
В этом случае экземпляр проигрывателя Windows Media выглядит как «локальный», как если бы он был отдельным экземпляром, поэтому он не использует общий механизм воспроизведения с основным WMP, а работает как сам по себе.
Я уже видел некоторый полный исходный код, связанный с этим (т.е. https://github.com/…/PlayerWMP.cpp) но почему-то мой «Удаленный» WMP всегда работает как «Локальный».
Я подтвердил, что мой IServiceProvider::QueryService
а также IWMPRemoteMediaServices::GetServiceType
реализация вызывается, поэтому удаленное взаимодействие уже должно быть правильно настроено, и опять же, проблема не в том, что я не могу разместить объект ActiveX, проблема в том, что не удается удалить основной экземпляр WMP
наконец, что-то выяснилось через несколько дней, по крайней мере для Windows 7, удаленное взаимодействие WMP не работает, если приложение удаленного взаимодействия работает от имени администратора, независимо от того, работает ли WMP от имени администратора или нет, просто оно не работает. Образцы приложений у меня тоже работали так же, но я до сих пор не видел их общий знаменатель. Я также не вижу никаких сообщений в Интернете по этому поводу. Я знаю, что это не полный / реальный ответ, но я надеюсь, что это может помочь и другим людям