IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MFC Discussion :

Ejection lecteur CD et DVD


Sujet :

MFC

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 79
    Points : 40
    Points
    40
    Par défaut Ejection lecteur CD et DVD
    Slt tlm, je cherche un moyen d'ouvrir le lecteur cd et dvd, et de les fermer.@+

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 381
    Points : 41 582
    Points
    41 582
    Par défaut
    Eh bien, il semblerait qu'il y ait plusieurs solutions: Diverses solutions à haut niveau que je ne connais pas, utilisant généralement MFC, COM, etc.

    Ou bien, à bas niveau avec la fonction DeviceIoControl(): cherche la doc de IOCTL_STORAGE_EJECT_MEDIA et IOCTL_STORAGE_LOAD_MEDIA...

    un petit exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    DWORD dwBytesReturned;
    HANDLE hDevice = CreateFile(deviceName, 
     GENERIC_READ | GENERIC_WRITE | FILE_READ_ATTRIBUTES,
     FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, 0, NULL);
     
    DeviceIoControl(
     hDevice,                     // handle to device
     IOCTL_STORAGE_EJECT_MEDIA,   // dwIoControlCode
     NULL,                        // lpInBuffer
     0,                           // nInBufferSize
     NULL,                        // lpOutBuffer
     0,                           // nOutBufferSize
     &dwBytesReturned,            // number of bytes returned : never NULL
     NULL                         // OVERLAPPED structure
    );
     
    CloseHandle(hDevice);
    Edit: À bas niveau, tu choisis directement avec la lettre (\\.\E: par exemple) mais:
    1) C'est déconseillé (sécurité etc.),
    2) il faut être membre du groupe administrateurs
    3) Ca ne marche que sous les windows NT

  3. #3
    Membre émérite
    Avatar de la drogue c'est mal
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    2 253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 2 253
    Points : 2 747
    Points
    2 747
    Par défaut
    bah en appuyant sur le bouton "eject"

  4. #4
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    salut,

    Ce même sujet a été traité cette semaine,
    voir la fin du post it faq deux contributions ont été postées.

  5. #5
    mat.M
    Invité(e)
    Par défaut
    regarder dans les commandes MCI dans le MSDN ; ça se fait tout simplement.

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 79
    Points : 40
    Points
    40
    Par défaut
    le prob que je rencontre, c'est que j n'arrive pas a ouvrir le lecteur cd. J'utilise la commande mciSendString(); et ca ouvre tjs le lecteur dvd. Je voudrais pouvoir ouvrir les 2.

  7. #7
    mat.M
    Invité(e)
    Par défaut
    Citation Envoyé par ArkAng3
    le prob que je rencontre, c'est que j n'arrive pas a ouvrir le lecteur cd. J'utilise la commande mciSendString(); et ca ouvre tjs le lecteur dvd. Je voudrais pouvoir ouvrir les 2.
    il faut faire une recherche sur tous les lecteurs et considérer celui que l'on souhaite ouvrir.
    Il ya des API pour ça du genre GetVolumeLabel GetDriveType....
    Voir MSDN

  8. #8
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 753
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 753
    Points : 10 704
    Points
    10 704
    Billets dans le blog
    3
    Par défaut
    A la fin y'a un lien vers comment spécifier le lecteur avec MCI, sinon une alternative avec les IOCTL:
    http://www.developpez.net/forums/vie...241301#2241301

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 79
    Points : 40
    Points
    40
    Par défaut
    merci ca marche impec Aurelien

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Mon lecteur de CD / DVD n'est plus reconnu
    Par Daejung dans le forum Windows Vista
    Réponses: 1
    Dernier message: 02/01/2011, 19h28
  2. Lister les lecteurs cd et dvd
    Par fab56 dans le forum Delphi
    Réponses: 7
    Dernier message: 16/07/2007, 20h18
  3. Windows XP ne reconnait plus mon lecteur de CD/DVD
    Par jpdar dans le forum Windows XP
    Réponses: 6
    Dernier message: 17/04/2007, 19h19
  4. Reconnaissance lecteur/graveur cd/dvd
    Par Pollux dans le forum Windows XP
    Réponses: 2
    Dernier message: 03/03/2007, 23h00
  5. Mon lecteur DVD
    Par GLDavid dans le forum Matériel
    Réponses: 4
    Dernier message: 19/03/2004, 00h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo