Etienne BAUDOUX

Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Etienne BAUDOUX

Forum sur les projets de Etienne BAUDOUX

Le Deal du moment : -23%
EVGA SuperNOVA 650 G6 – Alimentation PC 100% ...
Voir le deal
77.91 €

2 participants

    CD-ROM : charger et éjecter ? [ RESOLU ]

    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5621
    Age : 31
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    CD-ROM : charger et éjecter ? [ RESOLU ] Empty CD-ROM : charger et éjecter ?

    Message par lereparateurdepc Jeu 21 Oct 2010 - 18:28

    Bonjour ,

    Existe-il un code pour éjecter et/ou charger le lecteur CD-ROM du PC ?

    Merci Smile

    Cordialement ,
    Le réparateur de PC
    Admin
    Admin
    Administrateur
    Administrateur


    Masculin Nombre de messages : 1882
    Age : 31
    Localisation : Boulogne Billancourt(92100)(France)
    Emploi/loisirs : Software Development Engineer
    Date d'inscription : 24/01/2008

    CD-ROM : charger et éjecter ? [ RESOLU ] Empty Re: CD-ROM : charger et éjecter ? [ RESOLU ]

    Message par Admin Jeu 21 Oct 2010 - 18:48

    Bonsoir,

    Qu'entends-tu par "charger" le lecteur cd? Le fermer?

    Pour éjecter son contenu, on va utiliser une API :

    Dans le premier onglet de ton éditeur de fonctions :
    - Déclarer une API :
    Bibliothèque : winmm
    Fonction : mciSendStringA
    Type de la valeur retourné : Long
    Paramètre1 : lpstrCommand Type:String
    Paramètre2 : lpstrReturnString Type:String
    Paramètre3 : uReturnLength Type:Long
    Paramètre4 : hwndCallback Type:Long

    Et pour l'utiliser dans une fonction :
    - Exécuter une API :
    Nom de la fonction : mciSendStringA
    Valeur du paramètre 1 : "Set CDAudio Door Open" (ne pas oublier les guillemets)
    Paramètre 2, 3 et 4 : 0

    Voila Wink

    @+
    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5621
    Age : 31
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    CD-ROM : charger et éjecter ? [ RESOLU ] Empty Re: CD-ROM : charger et éjecter ? [ RESOLU ]

    Message par lereparateurdepc Ven 22 Oct 2010 - 9:14

    re ,

    je parlelais d'éjecter et de rentrer le lecteur CD Smile Wink

    Cordialement ,
    Le réparateur de PC
    Admin
    Admin
    Administrateur
    Administrateur


    Masculin Nombre de messages : 1882
    Age : 31
    Localisation : Boulogne Billancourt(92100)(France)
    Emploi/loisirs : Software Development Engineer
    Date d'inscription : 24/01/2008

    CD-ROM : charger et éjecter ? [ RESOLU ] Empty Re: CD-ROM : charger et éjecter ? [ RESOLU ]

    Message par Admin Ven 22 Oct 2010 - 10:21

    Ok, tu as déjà la méthode pour ouvrir le lecteur. Pour le fermer, il suffit de changer la valeur du paramètre 1, dans Exécuter une API, et de mettre :
    "Set CDAudio Door Closed"
    à la place de
    "Set CDAudio Door Open"

    @+
    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5621
    Age : 31
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    CD-ROM : charger et éjecter ? [ RESOLU ] Empty Re: CD-ROM : charger et éjecter ? [ RESOLU ]

    Message par lereparateurdepc Ven 22 Oct 2010 - 11:37

    re ,

    MERCI !! Smile

    Très bien tout ça mais il faut déjà avoir un lecteur CD !! Smile

    Existe-il un code pour détecter si il y a ou non un lecteur cd-rom ?

    Merci !!

    Cordialement ,
    Le réparateur de PC
    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5621
    Age : 31
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    CD-ROM : charger et éjecter ? [ RESOLU ] Empty Re: CD-ROM : charger et éjecter ? [ RESOLU ]

    Message par lereparateurdepc Ven 22 Oct 2010 - 11:48

    re ,

    SUPPER !! ça marche trop bien !!

    mais dans " exécuter une API " j'ai mis dans " Variable reçevant le résultat " ma variable : var_tiroir ; et j'ai un nombre Smile
    ce nombre correspond a quoi ??????

    MERCI

    Cordialement ,
    Le réparateur de PC
    Admin
    Admin
    Administrateur
    Administrateur


    Masculin Nombre de messages : 1882
    Age : 31
    Localisation : Boulogne Billancourt(92100)(France)
    Emploi/loisirs : Software Development Engineer
    Date d'inscription : 24/01/2008

    CD-ROM : charger et éjecter ? [ RESOLU ] Empty Re: CD-ROM : charger et éjecter ? [ RESOLU ]

    Message par Admin Ven 22 Oct 2010 - 12:01

    Salut,

    Si la valeur retournée est 0, c'est que tout c'est bien passé, sinon, c'est qu'il y a eu une erreur (mais laquelle, ça on ne sait pas lol).

    Pour détecter s'il y a un lecteur cd, on peut regarder chaque lecteur et voir si c'est un lecteur cd ou pas :
    Créer une variables Drives de type tableau, elle sera égale à la liste des lecteurs. Une variable ActualDrive, qui sera égale au lecteur analysé dans le tableau Drives. Une variable Num que l'on utilisera pour une boucle limitée. Et enfin une variable DriveTy qui sera égale au type du lecteur (cd, disque dur..etc).

    maintenant la démarche :
    - Exécuter des commandes VB.Net :
    Drives = System.IO.DriveInfo.GetDrives
    - Créer une boucle limitée :
    On par de Num = 0 jusqu'à Drives soustrait de 1 Wink
    --- Modifier une variable : ActualDrive = Drives(Num) (cette valeur n'est pas du texte)
    --- Modifier une variable : DriveTy = ActualDrive.DriveType (cette valeur n'est pas du texte)
    --- Créer une condition : si DriveTy = System.IO.DriveType.CDRom (cette valeur n'est pas du texte), alors :
    --- --- Afficher un message : Le lecteur [ CODE]ActualDrive.Name[/ CODE] est un lecteur CD-ROM
    Note : normalement il n'y a pas d'espace entre [ et CODE], idem pour [/ et CODE]

    Voila, je pense qu'avec cet exemple tu peux faire à peut près tout ce que tu veux Wink

    @+
    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5621
    Age : 31
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    CD-ROM : charger et éjecter ? [ RESOLU ] Empty Re: CD-ROM : charger et éjecter ? [ RESOLU ]

    Message par lereparateurdepc Ven 22 Oct 2010 - 12:21

    re ,

    Pour moi , la valeur retournée n'est jamais 0 !! alors que le tiroir s'ouvre et se referme très bien !! Smile

    Sinon , celà fonctionne !!

    Maintenant , je souhaite afficher un message quand AUCUN lecteur cd-rom n'est détecté ?? j'ai essayé un else dans la condition
    mais il maffiche ce message plusieures fois ( je sais pourquoi ) donc , y a t-il un moyen de savoir quand la boucle est terminée ???


    Merci !! Smile

    Cordialement ,
    Le réparateur de PC
    Admin
    Admin
    Administrateur
    Administrateur


    Masculin Nombre de messages : 1882
    Age : 31
    Localisation : Boulogne Billancourt(92100)(France)
    Emploi/loisirs : Software Development Engineer
    Date d'inscription : 24/01/2008

    CD-ROM : charger et éjecter ? [ RESOLU ] Empty Re: CD-ROM : charger et éjecter ? [ RESOLU ]

    Message par Admin Ven 22 Oct 2010 - 12:25

    Oui cheers Le principe est en fait très simple :
    - j'ai une variable LecteurDetecte = False
    - j'ai ma boucle limité
    --- dans la condition : si DriveTy = System.IO.DriveType.CDRom, alors :
    --- --- LecteurDetecte = True
    et après la boucle :
    - Si LecteurDetecte = True, alors
    --- Un lecteur a été détecté
    - Sinon
    --- Aucun lecteur cd détecté Wink
    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5621
    Age : 31
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    CD-ROM : charger et éjecter ? [ RESOLU ] Empty Re: CD-ROM : charger et éjecter ? [ RESOLU ]

    Message par lereparateurdepc Ven 22 Oct 2010 - 12:29

    re ,

    eu et une fois de plus .... je cherche compliqué !! Smile

    Maintenent : est-il possible de savoir si le lecteur est ouvert ou fermé ?

    -> indépendament du code précédent !! ( un code VB.net par exemple )

    Cordialement ,
    Le réparateur de PC
    Admin
    Admin
    Administrateur
    Administrateur


    Masculin Nombre de messages : 1882
    Age : 31
    Localisation : Boulogne Billancourt(92100)(France)
    Emploi/loisirs : Software Development Engineer
    Date d'inscription : 24/01/2008

    CD-ROM : charger et éjecter ? [ RESOLU ] Empty Re: CD-ROM : charger et éjecter ? [ RESOLU ]

    Message par Admin Ven 22 Oct 2010 - 12:37

    Et bien, il faut en tout cas réutiliser en partie ce que je t'ai donné, avec les GetDrives et autre :
    Comme tu as put le constater, ActualDrive.Name retourne la lettre du lecteur enregistré dans la variable ActualDrive.
    en mettant ActualDrive.IsReady, tu obtient une valeur (True ou False) indiquant si un CD est dans le lecteur ou pas, c'est le mieux que l'on puisse faire. Je n'ai pas trouvé comment détecter si le lecteur est ouvert ou fermé.

    @+
    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5621
    Age : 31
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    CD-ROM : charger et éjecter ? [ RESOLU ] Empty Re: CD-ROM : charger et éjecter ? [ RESOLU ]

    Message par lereparateurdepc Ven 22 Oct 2010 - 12:40

    re ,

    OK , ce n'est pas si grave !! et puis , c'est déjà très BIEN !! Smile

    MERCI !!

    Sujet résolu ! Smile Smile

    Cordialement ,
    Le réparateur de PC

    Contenu sponsorisé


    CD-ROM : charger et éjecter ? [ RESOLU ] Empty Re: CD-ROM : charger et éjecter ? [ RESOLU ]

    Message par Contenu sponsorisé


      La date/heure actuelle est Jeu 28 Mar 2024 - 20:49