| Summary: | Не выйти из просмотра слайдов (КМ-Школа) | ||
|---|---|---|---|
| Product: | WINE@Etersoft | Reporter: | Денис Баранов <baraka> |
| Component: | Media Player | Assignee: | Константин Кондратюк <kondratyuk> |
| Status: | CLOSED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | P5 | CC: | lav, night |
| Version: | unspecified | ||
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Заявки RT: | Связано с: | ||
| Дата напоминания: | |||
| Bug Depends on: | 1844 | ||
| Bug Blocks: | 1528, 1964 | ||
|
Description
Денис Баранов
2008-06-18 17:50:33 MSD
ОК, спасибо. Принято. Как и ожидалось, абсолютно неизвестный нам вызов Определение константы должно находиться примерно в блоке "IWMPMetadata* interfaces" DISPID_WMPMETADATA_BASE - 1050 Дальше есть 1051,52,53,54,55,56,100,101,102... Что делать с 1068 - непонятно. Функция без входных параметров, выходные неизвестны. Сделал заглушку, просто возвращающую S_OK из Invoke. Программа тут же пытается создать интерфейс 22D6F311-B0F6-11D0-94AB-0080C74C7E95 - IMediaPlayer. Никакого описания этого интерфейса в MSDN нет. Реализовал IMediaPlayer, но это ничего не даёт. Видимо, всё-таки Invoke этого неизвестного метода должен что-то делать и возвращать (тем более, что это PROPERTYGET...) "
1068 это
property PlayState: TOleEnum index 1068 read GetTOleEnumProp;
"
Сделал вызов get_playState через 1068. Ничего не изменилось.
1068 - это свой get_playState для IMediaPlayer. Для того, чтобы всё закрылось, состояние IMediaPlayer'а должно быть mpStopped или mpClosed (0 или 6). Попробовал вернуть 0 на вызов Invoke 1068 - кнопка сработала. Проблнма больше не воспроизвелась. Сделал патч. Можно закрыть багу после появления его в сборке. Работает. wine-school-0.9.4 Закрываю. сборка 0.9.4-alt0.M40.1 |