Using Windows' WMI library, how can I eject CD rom mounted in a specific CD/DVD drive?
I am asking for sources from WMI docs or examples since I am using wmi.py library on Python.
It would be great if solution satisfies Windows computer newer than Windows 2000 and having multi CD-ROMs. (i.e. I have D: F: drives and both are CD-ROM drives. I might want to eject cd in F: specifically.)
Searched on the net but could not find anything relevant. The last solution must be having 3rd party binaries and executing from the shell.
You can use ctypes.
UPDATE:
If you have more that one drive, you can use to open command to initialize a specific device before calling the function above. For example (not tested).
Also, see the documentation on how to check return values
WMI itself doesn't provide means to eject CD/DVD drives. There're other solutions though, which involve using Windows API functions, for example:
Using the
mciSendString
function. Can't help you with the Python code, but here's the C# example to help you get the idea:Using the
DeviceIOControl
function. An example (also in C#) is here.