![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как найти все CD приводы? [D7, WinXP]
Anthony © (2005-02-08 19:41:00)Уважаемые мастера! Не подскажите как найти имена дисков всех CD приводов (cd-rom, cd-rw и т.д.)
UserName0001 (2005-02-10 15:31:00) [1]***
begin...end (2005-02-09 13:40:00) [2]> Poirot © (09.02.05 13:36) [8]
Да, можно и так, конечно. Наверное, так будет правильнее. Спасибо.
Poirot (2005-02-09 13:36:00) [3]begin...end © (09.02.05 13:32) [7]
Да, это ИМХО это лучше. потомучто дисков-то может быть мало, а перебирать 26 букв.
begin...end (2005-02-09 13:32:00) [4]> Poirot © (09.02.05 13:27) [6]
Э-э-э... Не совсем понял... Вы имеете в виду, что можно не тупо проверять всё от 'A' до 'Z', а вначале получить список всех имеющихся дисков?
Poirot (2005-02-09 13:27:00) [5]begin...end © (08.02.05 19:47) [1]
Всё немного интереснее можно сделать...
GetDriveType - Determines whether a disk drive is a removable, fixed, CD-ROM, RAM disk, or network drive.
GetLogicalDrives - Returns a bitmask representing the currently available disk drives.
GetLogicalDriveStrings - Fills a buffer with strings that specify valid drives in the system.
GanibalLector (2005-02-08 20:54:00) [6]> он тоже высветиться?
Да!И даже если у тебя виртуальный CD,то тоже высветиться
Anthony (2005-02-08 20:07:00) [7]Ну если бы он был, то он тоже будет высвечиваться - вот в чем вопрос
dimaxx (2005-02-08 20:06:00) [8]Как он может высветиться, если его нет?
Anthony (2005-02-08 19:50:00) [9]Спасибо, а если на компе DVD есть (я спрашиваю, потому что у меня его (DVD) нет) он тоже высветиться?
begin...end (2005-02-08 19:47:00) [10]> Anthony © (08.02.05 19:41)
Воспользуйтесь функцией GetDriveType.
var
Ch: Char;
List: String;
begin
for Ch := 'A' to 'Z' do
if GetDriveType(PChar(Ch + ':\')) = DRIVE_CDROM then
List := List + Ch;
Caption := List
end.