Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Два драйва [D7, WinXP]


PoiSoN2003 ©   (2003-03-13 06:30:00) 

Ув. профи!
Как в моей программе различить два драйва?
Подробнее: хочу написать программку, которая бы висела в трее и отлавливала нажатия заданных клавиш для открытия/закрытия CD-rom.
Грубо - F9-открыть, F10-закрыть. Но с одним CD-rom все в порядке, а вот с двумя - не получается.
Плиз, не оставьте в биде:), помогите начинающему!


Diamond Cat   (2003-03-15 13:30:00) [1]

ну для начала в цикле от A-Z прогоняешь GetDriveType по ответу выясняешь на каких буквах сидит сд. далее MCI_OPEN_PARMS (хелп Windows SDK)

The MCI_OPEN_PARMS structure contains information for the MCI_OPEN command.

typedef struct {
DWORD dwCallback;
MCIDEVICEID wDeviceID;
LPCSTR lpstrDeviceType;
LPCSTR lpstrElementName;
LPCSTR lpstrAlias;
} MCI_OPEN_PARMS;

заполняешь эту структурку и
mciSendCommand(0, mci_Open, флаги на действие, Longint(@MCI_OPEN_PARMS));
типа вот так


PoiSoN2003   (2003-03-15 02:16:00) [2]

Извините, если не внятно спросил.
Это и имелось в виду: F9/F10 - один драйв, F11/F12 - второй.
Но чтобы не выбирать какой-то из двух.
Прога висит в трее - нажал F9 - выехал первый сидюк, нажал F11 - выехал второй.


Anatoly Podgoretsky   (2003-03-13 08:35:00) [3]

А с двумя и не получится, надо ЧЕТЫРЕ клавиши


Наверх

Титульная страница Поиск, карта сайта Написать письмо