При открытии в wine iexplore (gecko) тестовой страницы http://members.aol.com/jrzycrim01/mozilla/wmp/wmpaxtest.html должно отображаться видео и проигрываться музыка. На данный момент с нашей wmp.dll не происходит ничего дальше выделения пространства под объект. При использовании виндового плеера всё работает корректно.
Add IOleWindow, IOleInPlaceObject and IOleInPlaceObjectWindowless interfaces commit 8694bc4014548c86ccb8eb50e2fe639745ffa037 Из вызываемых новых интерфейсов ещё остались: IPersistStream IPersistPropertyBag IProvideClassInfo
Add IPersist, IPersistStream, IPersistPropertyBag interfaces commit 423fca51edd3e45e7acfb6f170685621173b374d IProvideClassInfo очень заморочно реализовывать, будем надеяться, что не понадобится :)
После добавления интерфейсов сразу всплыли 2 нереализованных метода: IPersistPropertyBag::Load IOleInPlaceObject::SetObjectRects
Оба метода имеют только входные параметры, а значит, для книета не важно, как они выполнятся. Сделал заглушки на оба - ничего не поменялось в выполнении теста.
Метод IPersistPropertyBag::Load оказался нужным решением. Он через IPropertyBag::Read может читать свойства объекта. Для теста нужно как минимум реализовать в нём Read следующих параметров: url, autostart, ShowStatusBar, volume, stretchToFit
wmp: Implement IPersistPropertyBag::Load (fix eterbug #1998) commit 3749e726b5ecd2d6f8e78308ea30368d33526894 Теперь открывается внешним плеером. Все параметры, кроме "url", пока игнорируются.