IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
logo
Sommaire > Système > Son
        Comment jouer un son d'un fichier Wave ?
        Comment produire un son système Windows ?
        Comment afficher la fenêtre de réglage du volume Windows ?
        Comment régler le volume du son dans Windows ?



Comment jouer un son d'un fichier Wave ?
Créé le 01/09/2004[haut]
auteur : Ricky81
Pour jouer un fichier Wave, commencez par inclure le header mmsystem.h, puis utilisez la fonction PlaySound.

PlaySound("E:\\WINDOWS\\Media\\notify.wav", NULL, SND_SYNC);
Dans cet exemple, le son est joué et la fonction renvoie true après la fin du son.
Voyez l'aide pour la liste des options possibles.


Comment produire un son système Windows ?
Créé le 01/09/2004[haut]
auteur : Geronimo
Pour produire un son système Windows, vous pouvez utiliser la fonction MessageBeep. Cette fonction prend une constante en argument qui précise le type de son à produire. Voici tout d'abord un exemple simple d'utilisation :>

MessageBeep(MB_OK);
Les sons utilisables sont :
  • 0xFFFFFFFF : Message sonore basique généré par l'haut-parleur de votre PC
  • MB_ICONASTERISK : SystemAsterisk - Message d'information
  • MB_ICONEXCLAMATION : SystemExclamation - Message d'avertissement
  • MB_ICONHAND : SystemHand - Message d'Erreur (interruption d'un processus)
  • MB_ICONQUESTION : SystemQuestion - Message demandant une confirmation ou une infirmation
  • MB_OK : SystemDefault - Message sonore par défaut


Comment afficher la fenêtre de réglage du volume Windows ?
Créé le 01/09/2004[haut]
auteur : Geronimo
Il suffit de lancer le programme correspondant avec la fonction ShellExecute.

ShellExecute(0, "open", "sndvol32.exe", 0, 0, SW_SHOW);

Comment régler le volume du son dans Windows ?
Mise à jour le 22/11/2010[haut]
auteurs : Bibmari, Crayon
Pour régler le volume du son dans Windows, il va falloir utiliser deux fonctions de l'API Win32 : waveOutGetVolume pour récupérer le volume courant, et waveOutSetVolume pour le positionner.
Ces deux fonctions sont déclarées dans le header mmsystem.h.
Le Handle utilisé sera NULL pour impacter le son dans son intégralité. Cette usage n'est pas documenté dans la MSDN, mais il semble qu'il l'ait été dans une version précédente.

Le code suivant montre comment récupérer le volume actuel du mixer, le modifier, et retourner à la valeur précédente.

#include <mmsystem.h>
...
unsigned long volume;
waveOutGetVolume(NULL, (LPDWORD) &volume);
waveOutSetVolume(NULL, (DWORD)0x0);
waveOutSetVolume(NULL, volume);
warning A partir de Windows Vista ces méthodes ne sont plus gérées, on peut donc utiliser le code suivant pour afficher la fenêtre de contrôle de son :

ShellExecute(0, "open", "sndvol.exe", 0, 0, SW_SHOW); 
lien : en MSDN : waveOutGetVolume
lien : en MSDN : waveOutSetVolume


Consultez les autres F.A.Q.


Valid XHTML 1.0 TransitionalValid CSS!

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2009 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.