Detection CDROM - C++ - Programmation
Marsh Posté le 22-07-2005 à 09:53:19
Salut,
J'ai cherché et j'ai trouvé le code suivant :
MCI_STATUS_PARMS Info;
ZeroMemory(&Info, sizeof(Info));
Info.dwItem = MCI_STATUS_MEDIA_PRESENT;
mciSendCommand(mci_cd_device, MCI_STATUS, MCI_STATUS_ITEM,
DWORD(&Info));
if(!Info.dwReturn)
MessageBox(NULL, "Pas de CD détecté !", "", MB_OK);
else
MessageBox(NULL, "C bon y'a un cd ", "", MB_OK);
Mais je trouve pas ou on defini quel lecteur il doit tester .
Je pense que c'est la variable mci_cd_device mais je ne sais po comment lui dire .
Merci
Marsh Posté le 22-07-2005 à 18:18:38
(Pas testé)
Code :
|
Marsh Posté le 25-07-2005 à 09:39:21
J'ai rajouté ca dans ton code pou tester:
Code :
|
Mais dans tout les cas il me renvois qu'il y'a un cd détecté....
tu defini bien le lecteur qu'il scan grace a DEVTYPE_CD_AUDIO ? de cette facon la :
Code :
|
Merci de ton aide!
Marsh Posté le 01-08-2005 à 14:59:26
Avec IOCTL_CDROM_GET_DRIVE_GEOMETRY, tu dois pouvoir déterminer si un CD est présent, ainsi que s'il est vierge ou non.
Marsh Posté le 01-08-2005 à 18:13:19
Salut ,
J'ai cherché, mais je ne trouve pas comment utiliser IOCTL_CDROM_GET_DRIVE_GEOMETRY pour detecter si un cd est vierge .
Pourrai tu me donner un code d'exmple, ou me renvoyer vers un site qui en parle si tu trouve.
MErci !
Marsh Posté le 02-08-2005 à 10:45:16
http://support.microsoft.com/defau [...] -US;138434
Tu peux simplifier l'exemple en virant l'utilisation du fichier (1° CreateFile) et en supprimant les appels à IOCTL_CDROM_MEDIA_REMOVAL qui ne sont pas utiles dans ton cas.
Bon finallement j'ai fait le test, ça marche:
Code :
|
Marsh Posté le 21-07-2005 à 13:48:19
Bonjour,
POur mon programme en C++ qui va graver des cd, j'ai besoin de savoir si un cd est insérer dans le lecteur ou pas.J'utilise donc la fonction DiskSize() qui renvoi -1 en cas d'echec. Le truc c que si j'insere un cd vierge, la fonction renvoi également -1 comme si il n'y avait pas de cd.
Je cherche donc un moyen de savoir si le cd inséré est vierge en C++...
Merci de votre aide!