Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.06.10;
Скачать: CL | DM;

Вниз

Определение метки компакт диска   Найти похожие ветки 

 
Oks   (2002-03-14 15:42) [0]

Уважаемые знатоки!
Подскажите пожалуйста как определить метку компакт диска, если можно с примером.
Заранее спасибо!


 
Song ©   (2002-03-14 18:35) [1]

По-моему через FindFirst можно


 
McSimm ©   (2002-03-14 19:04) [2]

Функция GetVolumeInformation.


 
McSimm ©   (2002-03-14 19:07) [3]


> если можно с примером

Можно :)
procedure TForm1.Button2Click(Sender: TObject);
var S, S2: String;
I: Integer;
MCL, fsf: Cardinal;
begin
SetLength(S, 21);
SetLength(S2, 33);
if not GetVolumeInformation("F:\", PChar(S), 20, @I, MCL, fsf, nil, 0)
then begin
SetLength(S, 128);
FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, nil, GetLastError, 0, PChar(S), 127, nil);
ShowMessage(S)
end
else ShowMessage(S)
end;


 
Oks   (2002-03-15 11:56) [4]

Большое спасибо!!!
И еще один вопрос, если можно:
как определить букву диска, под которой находится CD-ROM?


 
McSimm ©   (2002-03-15 12:40) [5]

Проверить является ли устройство CD-ROM можно так:
if GetDriveType("F:\") = DRIVE_CDROM then ShowMessage("cdrom");

Проверить какие логические диски работают в системе можно с помощью функций
GetLogicalDrives - возвращает битовую маску дисков - "A:"=0й бит
GetLogicalDriveStrings - возвращает в буфере строковые обозначения, соответствующие дискам. Завершается список двумя нулями.
Например
"A:\"#0"C:\"#0"D:\"#0#0

PS Надеюсь разобрался, - в предыдущем примере случайно попала ненужная строка SetLength(S2, 33);


 
Oks   (2002-03-15 15:07) [6]

>McSimm
Спасибо за консультацию!
Очень признателен.



Страницы: 1 вся ветка

Текущий архив: 2002.06.10;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
1-30900
Роман Мишин
2002-05-30 09:43
2002.06.10
печать шрифтов не установленных в системе


6-30961
Hecker
2002-03-28 17:43
2002.06.10
Чем отличаются?


1-30742
Great DAN
2002-05-30 12:10
2002.06.10
Печать


1-30904
kaldr
2002-05-30 08:06
2002.06.10
Speedbutton


14-30976
drpass
2002-05-01 18:43
2002.06.10
Кстати, заработался, чуть не забыл