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


Comment lire et modifier le réglage du volume sonore avec eVB ?
 
   


Nous allons apprendre dans cet article à régler le volume sonore de notre Pocket PC par programme. Dans la librairie dynamique "coredll.dll" il existe 2 fonctions permettant de lire le réglage du volume, et de le modifier.

6 Niveaux

Il existe 6 niveaux sonores, allant de 0 à 5 ce qui correspond aux réglages suivants :

0
Silence
1
Bas
2
Moyen bas
3
Moyen
4
Moyen haut
5
Haut

Lecture du réglage en cours

Pour lire le réglage en cours nous avons besoin de la fonction "waveOutGetVolume" qui se déclare dans eVB de la manière suivante :

Public Declare Function waveOutGetVolume Lib "coredll" (Byval hwo as long, ByRef pdwVolume as long) As Long

Et d'une fonction eVB traduisant la valeur de retour en niveau de 0 à 5 :

Public Function GetVolume() As Byte
Dim wVolume As Long
Call waveOutGetVolume(0, wVolume)
Select Case wVolume
Case 0
GetVolume = 0
Case 858993459
GetVolume = 1
Case 1717986918
GetVolume = 2
Case -1717986919
GetVolume = 3
Case -85993460
GetVolume = 4
Case -1
GetVolume = 5
End Select
End Function

Modification du réglage en cours

Pour appliquer un réglage personnel, il faut utiliser la fonction "waveOutSetVolume" qui se déclare en eVB de la manière suivante :

Public Declare Function waveOutSetVolume Lib "coredll" (ByVal hwo As Long, ByVal pdwVolume As Long) as Long

Et d'une procédure eVB qui transforme le niveau (0 à 5) en valeurs propres à cette fonction :

Public Sub SetVolume(ByVal wVolume As Byte)
Dim wVol As Long
Select Case wVolume
Case 0
wVol = 0
Case 1
wVol = 858993459
Case 2
wVol = 1717986918
Case 3
wVol = -1717986919
Case 4
wVol = -85993460
Case 5
wVol = -1
End Select
Call waveOutSetVolume(0, wVol)
End Sub

 

Voilà, avec ces 2 API et ces 2 fonctions eVB, vous pouvez contrôler le volume sonore de votre Pocket PC par programme.

 

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.