FAQ Visual Basic Routines 
Ejecter un support  partir d'un CDROM 
S'applique : VB4-32, VB5, VB6  

 

 Pr-requis 
  
un lecteur CDROM et un CD (pour les tests). 

--------------------------------------------------------------------------------
 

Les fonctions multimdia fournissent diffrentes commandes via les API mciSendString. Peut-tre la fonction la plus frquent solicite et jection (et chargement) d'un CD automatiquement  partir du code. En utilisant uniquement une ligne de commande, cela fonction trs facilement. 

 

  Code Module BAS 
  
Ajoutez le code ci-dessous dans un module BAS: 

--------------------------------------------------------------------------------
 


Option Explicit

  Public Declare Function mciSendString Lib "winmm.dll" _
     Alias "mciSendStringA" _
    (ByVal lpstrCommand As String, _
     ByVal lpstrReturnString As String, _
     ByVal uReturnLength As Long, _
     ByVal hwndCallback As Long) As Long

'--Fin de Bloc--'
   
  Feuille Code 
  
Il suffit uniquement de mettre un bouton sur une feuille et mettre le code suivant: 

--------------------------------------------------------------------------------
 


Option Explicit

Private Sub Command1_Click()

   Call mciSendString("Set CDAudio Door Open Wait", 0&, 0&, 0&)

End Sub
'--Fin de Bloc--'
   

 Commentaires 
  
Assez simple, non. L'api rcupre une chaine de caractre prdfini, et l'excute.  la valeur retourne est 0 si l'opration est ralise correctement, sinon un code d'erreur en cas de problme. Et de faon oppos aux autres api, mciSendCommand n'a nul besoin d'avoir le handle du priphrique CDRom. Pourtant, sur les systmes avec de multiples lecteurs CD-ROM, le handle reste le seul moyen pour s'assurer que l'on utilise le bon lecteur. 
La table ci-dessous, dcrite dans les rfrences MSDN, liste les diffrents types de priphriques que reconnait la ligne de commande ainsi que les drapeaux (flags) utiliss par chacun des types : 

cdaudio audio all off
audio all on
audio left off
audio left on
audio right off
audio right on door closed
door open
time format milliseconds
time format msf
time format tmsf 
digitalvideo     audio all off
audio all on
audio left off
audio left on
audio right off
audio right on
door closed
door open file format format
seek exactly on
seek exactly off
speed factor
still file format format
time format frames
time format milliseconds
video off
video on 
overlay audio all off
audio all on
audio left off
audio left on
audio right off audio right on
door closed
door open
video off
video on 
sequencer audio all off
audio all on
audio left off
audio left on
audio right off
audio right on
door closed
door open
master MIDI
master none
master SMPTE
offset time port mapper
port none
port port_number
slave file
slave MIDI
slave none
slave SMPTE
tempo tempo_value
time format milliseconds
time format SMPTE fps
time format SMPTE 30 drop
time format song pointer 
vcr assemble record on
assemble record off
audio all off
audio all on
audio left off
audio left on
audio right off
audio right on
clock time
counter format
counter value
door closed
door open
index counter
index date
index time
index timecode
length duration
pause timeout
postroll duration -
duration power on
power off
preroll duration duration
record format SP
record format LP
record format EP
speed factor
time format frames
time format hms
time format milliseconds
time format msf
time format SMPTE fps
time format SMPTE 30 drop
time format tmsf
time mode counter
time mode detect
time mode timecode
tracking plus
tracking minus
tracking reset 
videodisc audio all off
audio all on
audio left off
audio left on
audio right off
audio right on
door closed door open
time format frames
time format hms
time format milliseconds
time format track
video off
video on 
waveaudio alignment integer
any input
any output
audio all off
audio all on
audio left off
audio left on
audio right off
audio right on
bitspersample bit_count
bytespersec byte_rate channels channel_count
door closed
door open
format tag pcm
format tag tag
input integer
output integer
samplespersec integer
time format bytes
time format milliseconds
time format samples 
 

--------------------------------------------------------------------------------
 
