Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.10.2007, 12:17   #1
Митяй2
 
Регистрация: 06.10.2007
Сообщений: 8
По умолчанию Ошибка после воспроизведения mp3-мелодий

Всем привет!
В программе часто вызываю:


WMP_Music.URL:=<полный путь к mp3-песне>;
WMP_Music.controls.play;




WMP_Music - ActiveX компонент Windowa Media Player

Почему при выходе из программы почти всегда выводяться сообщения об ошибке (иногда почему то нет):

Access violation at address 00469E29 in module 'MobileCollection.exe'. Read of address 00000484

закрываю это окно, несколько раз появляется такоеже, потом:

Инструкция по адресу "0x004812e2" обратилась к памяти по адресу "0x00bf4a5d". Память не может быть "read"

закрываю это сообщение и появляется следующее:

Runtime error 216 at 0041FC4E


В чем может быть проблема?
Митяй2 вне форума Ответить с цитированием
Старый 06.10.2007, 14:07   #2
Илюха
Заблокирован
 
Регистрация: 29.09.2007
Сообщений: 106
По умолчанию

Во первых снинь исходник своей программы.
А во вторых может у тябя песня кодированого мп3, попробуй другую!

Последний раз редактировалось Илюха; 06.10.2007 в 14:09.
Илюха вне форума Ответить с цитированием
Старый 06.10.2007, 15:55   #3
Митяй2
 
Регистрация: 06.10.2007
Сообщений: 8
По умолчанию

Исходник одного модуля скинул тебе на мыло.
Посмотри плз функцию

procedure TFmMelody.LbMelodyClick(Sender: TObject);

место с:

if ((MultimediaType=midi) or (MultimediaType=mp3) or (MultimediaType=wav) or (MultimediaType=mp3full) or (MultimediaType=wavfull)) then
Митяй2 вне форума Ответить с цитированием
Старый 06.10.2007, 17:55   #4
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

Скорее всего проблема может быть в отсутствии деструктивных методов классов объектов в вашем коде. Попробуйте для начала останавливать воспроизведение. Потом уничтожать объект WMP_Music. Кстати, без него завершение происходит корректно?

Цитата:
Сообщение от Илюха Посмотреть сообщение
А во вторых может у тябя песня кодированого мп3, попробуй другую!
А это тут при чем? данному компоненту все равно, что воспроизводить, да хоть AAC или сжатое видео.
А что значит кодированный МР3? Еще есть не кодированный?

Последний раз редактировалось mihali4; 18.12.2009 в 17:28.
SkyM@n вне форума Ответить с цитированием
Старый 06.10.2007, 18:40   #5
Митяй2
 
Регистрация: 06.10.2007
Сообщений: 8
По умолчанию

Цитата:
Сообщение от SkyM@n Посмотреть сообщение
Скорее всего проблема может быть в отсутствии деструктивных методов классов объектов в вашем коде. Попробуйте для начала останавливать воспроизведение. Потом уничтожать объект WMP_Music. Кстати, без него завершение происходит корректно?
Да нормально - посмотрю, но я его не в реалтайме создаю, а на форму бросил - он сам должен уничтожаться при удалении формы.

Попробую MemProof отловить, буду разбираться хорошая прога
Митяй2 вне форума Ответить с цитированием
Старый 06.10.2007, 18:43   #6
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

Пробуй. Или смени контрол, если делаешь все правильно. Кстати, это случайно не WindowsMediaPlayer ?
SkyM@n вне форума Ответить с цитированием
Старый 06.10.2007, 18:49   #7
Митяй2
 
Регистрация: 06.10.2007
Сообщений: 8
По умолчанию

Да он, случайно, а что?

контрол, ты имеешь ввиду WMP_Music, который на форме удалить и заново поставить????

Последний раз редактировалось mihali4; 18.12.2009 в 17:28.
Митяй2 вне форума Ответить с цитированием
Старый 06.10.2007, 18:55   #8
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

Если сам виндовый медиаплеер работает отлично, тогда и этот контрол должен пахать на ура. поппробуй создать заново тестовое новое приложение, кинь туда этот контрол и попробуй воспроизвести+остановить+выйти с проги.
Работает?
SkyM@n вне форума Ответить с цитированием
Старый 06.10.2007, 19:06   #9
Митяй2
 
Регистрация: 06.10.2007
Сообщений: 8
По умолчанию

Да работает - только что сделал и прогнал более 100-ни mp3-шек на воспроизведение - все нормально. Это успокаивает, глюк где-то в другом месте? Что-то с ActiveX, что ли. Достали эти сообщения.
Митяй2 вне форума Ответить с цитированием
Старый 06.10.2007, 19:09   #10
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

А теперь пробуй выбрасывать поочередно по одному компоненту. После какого станет все ок - того и наказать!
SkyM@n вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка после перевода проекта Dr_Elvis Общие вопросы C/C++ 3 24.07.2008 14:27
Каретка после текста Shouldercannon Общие вопросы Delphi 3 20.07.2008 10:37
Сокращение после запятой Romuald Microsoft Office Excel 21 18.12.2007 10:32
проблемы воспроизведения видео _Solomon_ HTML и CSS 0 20.04.2007 08:50
ошибка, после того как я создал запись 'fayl' ZhekON Общие вопросы Delphi 15 01.04.2007 13:39