|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
Работа с CD/DWD дисководом
Я написал мини программу по открытию/закрытию привода CD/DWD дисковода. На форме 2 кнопки открыть/закрыть. Прописал каждой событие : открытие- mciSendString('Set cdaudio door open wait', nil, 0, handle);
закрытие- mciSendString('Set cdaudio door closed wait', nil, 0, handle); добавил uses MMSystem; ВСЕ РАБОТАЕТ ДИСКОВОД ОТКРЫВАЕТСЯ И ЗАКРЫВАЕТСЯ, НООО после закрытия при открытии диска на нем не отображаются файлы. При отключении - mciSendString('Set cdaudio door closed wait', nil, 0, handle); поле физического закрытия дисковода на диске отображаются файлы. Почему так происходит и как это можно исправить? Заранее спасибо за ваши ответы. |
#2
|
||||
|
||||
у меня года 2 не работает кнопка на приводе, поэтому для открытия/закрытия использую программку:
https://yadi.sk/d/9jkTd7fAkYisB управление через иконку в трее, либо Ctrl+Shift+Arrow Up|Down подобных проблем не наблюдалось. Пишу программы за еду. __________________ |
#3
|
||||
|
||||
Спасибо за программку. Хотел бы разобраться в коде. У разработчика программы получилось решить эту проблему. Может кто и знает что надо сделать.
|
#4
|
||||
|
||||
вот часть кода исходника этой программы:
Код:
procedure DoDiskEject(Eject: Boolean); begin if Eject then mciSendString('set cdaudio door open', nil, 0, 0) else mciSendString('set cdaudio door closed', nil, 0, 0); end; Пишу программы за еду. __________________ |
#5
|
||||
|
||||
Проблема решена дописал программку
В код программки добавил при нажатии на кнопку открыть или закрыть перезапуск программы. При перезагрузке программы она отключается от дисковода и дает открыть диск (выполнить авто запуск).
код перезапуска программы Код:
procedure TForm1.BitBtn2Click(Sender: TObject); var FullProgPath: PChar; begin FullProgPath:=PChar(Application.ExeName); WinExec(FullProgPath,SW_SHOW); Application.Terminate; end; прикрепляю готовую программку |