|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - TWindowsMediaPlayer fullScreen |
|
C/C++ - TWindowsMediaPlayer fullScreen
|
![]() Старожил Сообщения: 210 |
Доброго дня вам.
Программирую в Borland C++ Builder 6 Система Windows 7 x64 Добавил ActiveX компонент TWindowsMediaPlayer Все работает, но не могу программно включить полный экран. Свойства fullScreen просто НЕТ! Хотя должно быть. На соседнем компе в дельфи оно есть. Гуглил, везде используется свойство fullScreen. Шарил по библиотекам. В WMPLib_TLB.h нашел нужное мне свойство в интерфейсе IWMPPlayer3. Но как обратиться к нему непосредственно из экземпляра TWindowsMediaPlayer не знаю. Что за беда такая? Может кто подскажет, как реализовать его? Нужно именно программно. |
|
Отправлено: 09:59, 11-10-2013 |
Ветеран Сообщения: 4941
|
Профиль | Отправить PM | Цитировать К сожалению, у меня Builder'а нет. Но по логике должно быть так:
MyWMP -> fullScreen = true; |
Отправлено: 14:59, 11-10-2013 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
![]() Старожил Сообщения: 210
|
Профиль | Отправить PM | Цитировать Да, должно быть, но нету!!
Может мне кто нибудь дасть свои библиотеки WMPLib_TLB и WMPLib_OCX? |
Отправлено: 14:43, 13-10-2013 | #3 |
![]() Старожил Сообщения: 210
|
Профиль | Отправить PM | Цитировать Появились новые данные.
Порылся в WMPLib_TLB и WMPLib_OCX библиотеках и отыскал, что по умолчанию используется интерфейс IWMPCore, в котором нет реализации fullScreen. Зато она есть, например, в IWMPPlayer. На сайте MSDN нашел инфу, что между интерфейсами можно переключаться при помощи QueryInterface. Вот написал код процедуры, которая подключается к нужному интерфейсу и должна включить полный экран. TCOMIWMPPlayer __if; GUID __id; __id.Data1=0x6BF52A4F; __id.Data2=0x394A; __id.Data3=0x11D3; __id.Data4[0]=0xb1; __id.Data4[1]=0x53; __id.Data4[2]=0x00; __id.Data4[3]=0xc0; __id.Data4[4]=0x4f; __id.Data4[5]=0x79; __id.Data4[6]=0xfa; __id.Data4[7]=0xa6; _ASSERTE(MP1->DefaultDispatch); MP1->DefaultDispatch->QueryInterface(__id,(LPVOID*)&__if); __if->fullScreen=true; Проверил я то, что подключение к интерфейсу прошло, заменив fullScreen=true на controls->stop(). Проигрывание останавливалось при выполнении процедуры. То есть я на верном пути, но почему не включается полный экран??? |
Отправлено: 06:48, 15-10-2013 | #4 |
![]() Старожил Сообщения: 210
|
Профиль | Отправить PM | Цитировать Проблема решена.
__if->fullScreen=true; нужно заменить на __if->fullScreen=-1; Ох уж эти причуды мелкософта... |
|
Отправлено: 07:39, 15-10-2013 | #5 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Fullscreen видео на проекторе | Di373R | Программное обеспечение Windows | 0 | 18-11-2007 22:56 | |
не исчезает курсор при fullscreen видео | lokij | Microsoft Windows Vista | 2 | 05-07-2007 19:45 | |
fullscreen mode в Windows Server 2003 Terminal Services | Derik | Microsoft Windows NT/2000/2003 | 3 | 17-04-2007 14:31 | |
Как перейти в FullScreen? | bde | Программирование и базы данных | 6 | 15-03-2004 10:09 |
|