Chcę stworzyć prosty program służący do otwierania i zamykania CD ROMu. Wiem jak go otworzyć i zamknąć, jednak problem pojawia się, gdy chcę sprawdzić, czy tacka jest wysunięta, czy nie.

#include <iostream>
#include <windows.h>
#include <mmsystem.h>

using namespace std;

int main()
{
  char ret[10];
  mciSendString("status cdaudio mode", ret, sizeof(ret),NULL);

  cout << ret;
}

Polecenie, które ma zwrócić status CD ROMu wyświetla zawsze "open", niezależnie czy jest on otwarty, czy zamknięty.
W czym tkwi problem ? Jak mogę sprawdzić ten status ?