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

Вниз

Диск в СД роме   Найти похожие ветки 

 
Dmitriy_R   (2003-02-26 09:18) [0]

Как определить что за диск в сидироме(Аудио, Дата) и есть ли он там вообще?


 
Dmitriy_R   (2003-02-28 07:31) [1]

Ну неужели некто не знает? Ну тогда хоть как в моей программе сделать чтобы она авто определяла диск при вставке его в СД.
Даже если в винде авто определение выключено.


 
Alexandr B.   (2003-02-28 11:53) [2]


> Dmitriy_R (28.02.03 07:31)
> Ну неужели некто не знает? Ну тогда хоть как в моей программе
> сделать чтобы она авто определяла диск при вставке его в
> СД.
> Даже если в винде авто определение выключено

МЕсага некая шлется, запусти wsinsigh32 и помтори что там приходит окошку.


 
nomshar ©   (2003-02-28 14:06) [3]

Во-первых, посмотри юнит MPlayer.pas. Обрати особое внимание на процедуру TMediaPlayer.Open. Там есть такая запись:

const
DeviceName: array[TMPDeviceTypes] of PChar = ("", "AVIVideo", "CDAudio", "DAT", "DigitalVideo", "MMMovie",
"Other", "Overlay", "Scanner", "Sequencer", "VCR", "Videodisc", "WaveAudio");


Далее, если посмотришь выше, в 33 строке увидишь следующее:

TMPDeviceTypes = (dtAutoSelect, dtAVIVideo, dtCDAudio, dtDAT, dtDigitalVideo, dtMMMovie, dtOther, dtOverlay, dtScanner, dtSequencer, dtVCR, dtVideodisc, dtWaveAudio);


Далее: строчка 212. Догадается и слепой.

property DeviceType: TMPDeviceTypes
read FDeviceType
write SetDeviceType
default dtAutoSelect;

Вот в принципе и все. Смотри реализацию процедуры SetDeviceType, лмбо пользуйся TMediaPlayer.
Удачи.


 
An   (2003-02-28 17:31) [4]

// Используй GetVolumeInformation
// или обратись к документации SCSI (www.t10.org);
// --------------------------------------------------
// Пример из RC4WA ( http://rc4wa.narod.ru)

{ Определение AudioCD }
Function IsAudioCD(Drive: Char): Boolean;
Const
AudioCDVol = "Audio CD";
Var
DrivePath: String;
MaximumComponentLength: DWORD;
FileSystemFlags: DWORD;
VolumeName: String;
begin
Result:= False;
DrivePath:= Drive + ":\";
if GetDriveType(PChar(DrivePath))<>DRIVE_CDROM then
Exit;
SetLength(VolumeName, 64);
GetVolumeInformation(PChar(DrivePath),
PChar(VolumeName),
Length(VolumeName),
nil,
MaximumComponentLength,
FileSystemFlags,
nil,
0);
Result:= (lStrCmp(PChar(VolumeName), AudioCDVol)=0) and (MaximumComponentLength <= $FF);
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.025 c
1-67301
ferrik
2003-04-11 18:33
2003.04.21
Обращение к компонентам


1-67311
Лана Розанова
2003-04-09 09:45
2003.04.21
Округление


1-67304
BVK
2003-04-09 01:18
2003.04.21
Полный размер файлов заданной директории


1-67382
Xero
2003-04-10 11:23
2003.04.21
текстовой файл


1-67332
Seb_Kost
2003-04-09 12:50
2003.04.21
Присвоить EditMask время текущее