Le premier site francophone dédié au développement Pocket PC


Comment arrêter un son avec eVB ?
 
   


Nous allons apprendre dans cet article à stopper la lecture d'un son joué en mode asynchrone (voir article "Comment jouer des fichiers wav")

Le problème de l'arrêt d'un son ne se pose pas en mode synchrone car votre programme ne reprend la main que lorsque le son est entièrement joué, donc impossible à arrêter (logique non ?)

Lorsque vous jouez un son en mode asynchrone, il se peut que vous ayez besoin de l'arrêter avant la fin. Pour celà, nous allons utiliser de nouveau la fonction PlaySound de la libraire Coredll.dll que l'on déclare en eVB de la manière suivante (avec les constantes) :

Public Declare Function PlaySound Lib "Coredll" Alias "PlaySoundW" (ByVal lpszName As String, ByVal hModule As Long, ByVal dwFlags As Long) As Long
Private Const SND_FILENAME = &H20000
Private Const SND_ASYNC = &H1

Pour arrêter le son en cours, il suffit de lancer PlaySound avec comme premier paramètre vbNull :

Call PlaySound(vbNull, 0, SND_ASYNC)

et voilà, le son qui était en train d'être joué est stoppé.

 

Stéphane Sibué

 

 
       
   
 
   
Copyright 2001-2004 - Tous droits réservés
 
   

iPAQ est un produit de COMPAQ.
Visual Tools est un produit de Microsoft Corporation.
Toutes les autres marques et produits présents dans ces pages sont la propriété exclusive de leurs sociétés respectives.