Mega Code Archive

 
Categories / Delphi / Examples
 

Detect a cdrom drive

NOTE: This code does not work anymore in Windows 2000 or Windows XP. See the other tip listed at the top for all newer Windows versions. Test for example IsCDROM(4) to see, whether 'e:' is a CDROM drive. Drives are mapped like this: a: -> 0 b: -> 1 c: -> 2 etc. function IsCDROM(Drive: Integer): Boolean; assembler; Asm MOV AX,1500h { look for MSCDEX } xor BX,BX INT 2fh or BX,BX JZ @Finish MOV AX,150Bh { check for using CD driver } MOV CX,Drive INT 2fh or AX,AX @Finish: end;