Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - TWindowsMediaPlayer fullScreen

Ответить
Настройки темы
C/C++ - TWindowsMediaPlayer fullScreen

Аватара для morebeauty

Старожил


Сообщения: 210
Благодарности: 29

Профиль | Отправить PM | Цитировать


Доброго дня вам.

Программирую в Borland C++ Builder 6
Система Windows 7 x64

Добавил ActiveX компонент TWindowsMediaPlayer
Все работает, но не могу программно включить полный экран. Свойства fullScreen просто НЕТ! Хотя должно быть.
На соседнем компе в дельфи оно есть. Гуглил, везде используется свойство fullScreen.
Шарил по библиотекам. В WMPLib_TLB.h нашел нужное мне свойство в интерфейсе IWMPPlayer3. Но как обратиться к нему непосредственно из экземпляра TWindowsMediaPlayer не знаю.

Что за беда такая? Может кто подскажет, как реализовать его? Нужно именно программно.

Отправлено: 09:59, 11-10-2013

 

Аватара для Grabber2006

Ветеран


Сообщения: 4941
Благодарности: 1118

Профиль | Отправить PM | Цитировать


К сожалению, у меня Builder'а нет. Но по логике должно быть так:

MyWMP -> fullScreen = true;

Отправлено: 14:59, 11-10-2013 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для morebeauty

Старожил


Сообщения: 210
Благодарности: 29

Профиль | Отправить PM | Цитировать


Да, должно быть, но нету!!
Может мне кто нибудь дасть свои библиотеки WMPLib_TLB и WMPLib_OCX?

Отправлено: 14:43, 13-10-2013 | #3


Аватара для morebeauty

Старожил


Сообщения: 210
Благодарности: 29

Профиль | Отправить 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


Аватара для morebeauty

Старожил


Сообщения: 210
Благодарности: 29

Профиль | Отправить PM | Цитировать


Проблема решена.
__if->fullScreen=true;
нужно заменить на
__if->fullScreen=-1;

Ох уж эти причуды мелкософта...
Это сообщение посчитали полезным следующие участники:

Отправлено: 07:39, 15-10-2013 | #5



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - TWindowsMediaPlayer fullScreen

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
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




 
Переход