No Mci Device Open, Недочёт |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
No Mci Device Open, Недочёт |
Артемий |
13.10.2006 18:35
Сообщение
#1
|
Помощник капитана Группа: Пользователи Сообщений: 601 Пол: Мужской Реальное имя: Артем Репутация: 2 |
Корче, у медиаплеера есть такая штука EMCIDeviceError. При ошибке файла она выдает сообщение "No MCI device open". Она должна выдать одно сообщение, НО.. у меня выдает их дофига, может хоть 1000 , если я не остановлю этот фигов процесс. Дам код:
Код if OpenDialog1.Execute then with MediaPlayer1 do begin Filename := OpenDialog1.filename; Notify := True; try Open; except on EMCIDeviceError do begin ShowMessage('Ошибка обращения к файлу '); -------------------- Dum spiro spero!
|
volvo |
13.10.2006 18:41
Сообщение
#2
|
Гость |
Ну, так а самое интересное ты не показал... Что ты делаешь ПОСЛЕ показа сообщения? Полностью весь Begin ... End приведи...
|
Артемий |
13.10.2006 18:44
Сообщение
#3
|
Помощник капитана Группа: Пользователи Сообщений: 601 Пол: Мужской Реальное имя: Артем Репутация: 2 |
Пробовал так:
Код MediaPlayer1.Close; MediaPlayer1.Refresh; -------------------- Dum spiro spero!
|
volvo |
13.10.2006 18:48
Сообщение
#4
|
Гость |
Я тебя попросил НЕ кусочки, непонятно откуда выдранные, а ПОЛНОСТЬЮ блок Begin End для обработчика исключения. Ты вопрос задаешь, значит это - в твоих интересах. Не хочешь говорить, как делал - иди на форум телепатов.
|
Гость |
13.10.2006 19:06
Сообщение
#5
|
Гость |
if OpenDialog1.Execute then
with MediaPlayer1 do begin Filename := OpenDialog1.filename; Notify := True; try Open; except on EMCIDeviceError do begin ShowMessage('Ошибка обращения к файлу '); MediaPlayer1.Close; MediaPlayer1.Refresh; end; |
Артемий |
20.10.2006 19:50
Сообщение
#6
|
Помощник капитана Группа: Пользователи Сообщений: 601 Пол: Мужской Реальное имя: Артем Репутация: 2 |
Прости за задержку, вот полный Begin..End . Очень прошу помочь!
if OpenDialog1.Execute then -------------------- Dum spiro spero!
|
мисс_граффити |
21.10.2006 12:18
Сообщение
#7
|
просто человек Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
А что получается, если убрать Refresh?
-------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
Артемий |
21.10.2006 18:44
Сообщение
#8
|
Помощник капитана Группа: Пользователи Сообщений: 601 Пол: Мужской Реальное имя: Артем Репутация: 2 |
Тоже самое!
-------------------- Dum spiro spero!
|
Zevs5 |
21.10.2006 18:49
Сообщение
#9
|
user пока Группа: Пользователи Сообщений: 16 Пол: Мужской Репутация: 0 |
А такой вопрос: Для чего использовать "EMCIDeviceError" если ты всё равно выводишь своё сообщение об ошибке и закрываешь проигрыватель.
Сообщение отредактировано: Zevs5 - 21.10.2006 18:50 -------------------- Сделать можно всё, только надо знать как !!!
|
Артемий |
21.10.2006 18:58
Сообщение
#10
|
Помощник капитана Группа: Пользователи Сообщений: 601 Пол: Мужской Реальное имя: Артем Репутация: 2 |
Короче слушайте, вот этот плеер что я пишу, уже довольно сложный по своему устройству, соответственно внутренний код тоже не маленький. Собирал как-бы по кусочкам. Кто-то дал одно, кто-то другое, и теперь это всё в одной куче. Тогда я попробовал написать самый простой какой только можно придумать плеер. И ТАМ ВСЁ НОРМАЛЬНО! Скорее все что-то ещё нужно править в коде, не только этот кусок!
Цитата Для чего использовать "EMCIDeviceError" Ну как-бы там все-таки на АнгЛицком, а я хотел на РусскоМ. (или что ты имеешь в виду?) Сообщение отредактировано: Артемий2 - 21.10.2006 19:01 -------------------- Dum spiro spero!
|
Zevs5 |
21.10.2006 21:08
Сообщение
#11
|
user пока Группа: Пользователи Сообщений: 16 Пол: Мужской Репутация: 0 |
Я в смысле того что ты уже сообщение на русском ниже вывел через ShowMessage(), но мне кажется что тот код который ты указал запускается бесконечным циклом генерации сообщений.
Твоя связка try...except циклически опрашивает истинность, а выход ты из неё не сделал. Хотя я скорее всего ошибаюсь так как с делфи всего недели три. Сообщение отредактировано: Zevs5 - 21.10.2006 21:08 -------------------- Сделать можно всё, только надо знать как !!!
|
мисс_граффити |
21.10.2006 23:26
Сообщение
#12
|
просто человек Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
ей выход не нужен. она сама удаляет объект исключительной ситуации, когда отработает...
1. попробуй убрать строку on EMCIDeviceError do то есть просто try ... except ... там вариантов ошибки не много, можно попробовать не проверять. 2. при запуске непосредственно из среды и из уже скомпилированного файла ведет себя одинаково? 3. найди в Делфи такой пункт меню (где именно он находится - не знаю, он в разных версиях по-разному засунут): Stop on Delphi exception и посмотри, нет ли там галочки 4. в каком обработчике события вся эта радость происходит? 5. ...проще всего - скинь полностью проект. интересно посмотреть и попробовать найти глюк. Сообщение отредактировано: volvo - 2.11.2006 18:41 -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
Артемий |
22.10.2006 20:00
Сообщение
#13
|
Помощник капитана Группа: Пользователи Сообщений: 601 Пол: Мужской Реальное имя: Артем Репутация: 2 |
Всё это происходит в OnClick кнопки "Открыть медиафайл"!
Не нашел я этот "Stop on Delphi"! У меня Delphi 7 и TurboDelphi.NET , но сейчас я на семерке. Если не возражаешь я скину проект чуть позже. Пробовал твой совет Цитата 1. попробуй убрать строку
on EMCIDeviceError do -------------------- Dum spiro spero!
|
мисс_граффити |
23.10.2006 0:26
Сообщение
#14
|
просто человек Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
у меня 6.
во вторник в универе посмотрю, где это в 7. -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
Артемий |
24.10.2006 19:26
Сообщение
#15
|
Помощник капитана Группа: Пользователи Сообщений: 601 Пол: Мужской Реальное имя: Артем Репутация: 2 |
Слушай, я точно знаю что проблема не сдесь! Ведь когда я писал новый плеер ,этого не было! Скорее всего что-то в самом коде не то! Ща сяду, буду смотреть код. Спасибо за советы. Если сам не справлюсь, то кину тебе проект!
-------------------- Dum spiro spero!
|
Текстовая версия | 1.06.2024 19:56 |