Ejecter un cd par vb6

bonjour,
SVP je cherche un tetoriel detailler sur la maniere d'ejection d'un lecteur cd par une appliction vb.(vb6) merci d'avance

9 réponses

  1. Bonsoir,


    * Dim ts
    * Dim strDriveLetter
    * Dim intDriveLetter
    * Dim fs 'As Scripting.FileSystemObject
    * Const CDROM = 4
    * On Error Resume Next
    * Set fs = CreateObject("Scripting.FileSystemObject")
    *
    * ' Detection des lecteurs de CD
    * strDriveLetter = ""
    * For intDriveLetter = Asc("A") To Asc("Z")
    * Err.Clear
    * If fs.GetDrive(Chr(intDriveLetter)).DriveType = CDROM Then
    * If Err.Number = 0 Then
    * strDriveLetter = Chr(intDriveLetter)
    * Exit For
    * End If
    * End If
    * Next
    *
    * ' Ouvrir tous les lecteurs
    * MsgBox "Ton lecteur premier CD : " & strDriveLetter, vbOKOnly + 48, "CDROM=> " & strDriveLetter
    * Set owmp = CreateObject("WMPlayer.OCX.7")
    * Set colCDROMs = owmp.cdromCollection
    * For d = 0 To colCDROMs.Count - 1
    * colCDROMs.Item(d).Eject
    * Next
    *
    * ' Fermer tous les lecteurs que l'on vient d'ouvrir
    * A1 = MsgBox("Appuyer sur une touche pour fermer les lecteurs " & strDriveLetter, 0 + 64, "Infos")
    * For d = 0 to colCDROMs.Count -1
    * colCDROMs.Item(d).Eject
    * Next
    *
    * Set owmp = Nothing
    * Set colCDROMs = Nothing
    * wscript.quit
    1. bonsoir ,
      ca me donne une erreur "owmp variable non definie" quoi faire .merci d'avance

      1. et oWMP = CreateObject("WMPlayer.OCX.7") Set colCDROMs = oWMP.cdromCollection If colCDROMs.Count >= 1 Then For i = 0 To colCDROMs.Count - 1 colCDROMs.Item(i).Eject Next ' cdrom End If


        Uniquement sous XP,mais comme tu es sous XP,np ;-)
        1. ca marche pas aussi faut -t-il que j'ajoute quelque chose dans projet-->referance
          1. Bonjour,

            Voilà un exemple de procédure:

            Private Sub ejecter_Click() 
            Dim variable As Variant 
            Dim oWMP As Object 
            Dim colCD 
            
                Set oWMP = CreateObject("WMPlayer.OCX.7") 
                Set colCD = oWMP.cdromCollection 
                colCD.Item(0).Eject 
            
            End Sub


            Il n'y a pas de référence à cocher.

            ;o)
            «Ce que l'on conçoit bien s'énonce clairement, Et les mots pour le dire arrivent aisément.»
            Nicolas Boileau
            1. bonjour.
              dsl mais ca m'envoi des erreur de compilation:

              erreur d'exucution '-2147467259(8004005)':
              erreur automation
              erreur non specifiée
              peut tu m'aider a trouver ou est le problemme
              1. bonjour,

                Tu es bien sur VB 6 ? As-tu plusieurs lecteurs CD ?

                Chez moi ça fonctionne très bien sans erreur.
            2. oui je travail avec vb6 et j'ai deux lecteur en faite.je vais essayer avec un autre ordinateur qui contient un lecteur et je te repond ok.merci
            3. bonsoir,
              le code ca marche bien,mais seulement dans la machine ou vb est instaler.j'ai cree un executable mais lorsque je l'execute dans une machine ou le vb n'est pas installee il m'envois une erreur"the language dll'vb6fr.dll'could not be found"
              pouriez vous m'aider?merci
              1. Bonjour,

                Il faut télécharger le Runtime VB6 (https://www.commentcamarche.net/s/Runtime+VB6 et l'installer sur la machine qui n'a pas VB6.

                Sinon, tu as la solution de créer une installation avec l'empaquetage (voir dans Compléments de VB6 > "Empaquetage et déploiement..." ). Il existe d'autres outils comme Inno Setup (https://www.commentcamarche.net/telecharger/developpement/12385-inno-setup/ Dans les 2 cas, la DLL est incluse dans le setup d'installation de ton programme.

                A toi de voir la solution qui te convient le mieux.

                ;o)
            4. ok merci beaucoup pour ton aide je vais essayer avec l'empaquetage.et si je rencontre des problemme je vous derongerai encore.