If anyone has an interest in DVD media status, please try out the following script and see if it retrieves anything useful:
MsgBox % "Drive status is: " . GetDVDStatus("D:")
GetDVDStatus(DriveLetterWithColon) ; Caller passes in something like "D:".
{
if DllCall("winmm\mciSendString", str, "open " . DriveLetterWithColon
. " type videodisc alias MyDVD wait shareable", uint, 0, uint, 0, uint, 0)
return "Error opening the device."
DVDStatusCapacity := VarSetCapacity(DVDStatus, 100, 0)
error := DllCall("winmm\mciSendString", str, "status MyDVD mode", str, DVDStatus
, uint, DVDStatusCapacity, uint, 0)
DllCall("winmm\mciSendString", str, "close MyDVD wait", uint, 0, uint, 0, uint, 0)
if error
return "Error obtaining status."
else
return DVDStatus
}
You can also try replacing "status MyDVD mode" with "status media present" (returns TRUE if the media is inserted in the device or FALSE otherwise), "status side" (returns 1 or 2 to indicate which side of the videodisc is loaded), or "status media type" (returns the type of the media. For videodiscs, this is "CAV", "CLV", or "other", depending on the type of videodisc).
There's more info at
http://msdn.microsof... ... tus_mm.aspThere are also many other commands besides "status".
If any of this proves useful, it could be added as an example to the help file.