Fonction bip (utilapiset.h)
Génère des tons simples sur le haut-parleur. La fonction est synchrone ; il effectue une attente alertable et ne retourne pas le contrôle à son appelant tant que le son n’est pas terminé.
Syntaxe
BOOL Beep(
[in] DWORD dwFreq,
[in] DWORD dwDuration
);
Paramètres
[in] dwFreq
Fréquence du son, en hertz. Ce paramètre doit se trouver entre 37 et 32 767 (0x25 à 0x7FFF).
[in] dwDuration
Durée du son, en millisecondes.
Valeur retournée
Si la fonction réussit, la valeur de retour est différente de zéro.
Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.
Remarques
Il y a longtemps, tous les ordinateurs PC partagent une puce de minuteur d’intervalle programmable 8254 commune pour la génération de sons primitifs. La fonction Beep a été écrite spécifiquement pour émettre un bip sur ce morceau de matériel.
Sur ces anciens systèmes, les contrôles de muting et de volume n’ont aucun effet sur beep ; vous entendriez toujours le ton. Pour faire taire le ton, vous avez utilisé les commandes suivantes :
bip net stop
sc config beep start= disabled
Depuis lors, les cartes son sont devenues des équipements standard sur presque tous les ordinateurs PC. À mesure que les cartes son devenaient plus courantes, les fabricants ont commencé à supprimer l’ancienne puce du minuteur des ordinateurs. Les puces ont également été exclues de la conception des ordinateurs serveur. Le résultat est que Beep n’a pas fonctionné sur tous les ordinateurs sans la puce. C’était correct, car la plupart des développeurs étaient passés à l’appel de la fonction MessageBeep qui utilise le périphérique audio par défaut au lieu de la puce 8254.
Finalement, en raison du manque de matériel avec lequel communiquer, la prise en charge de Beep a été supprimée dans Windows Vista et Windows XP Édition 64 bits.
Dans Windows 7, beep a été réécrit pour passer le bip au périphérique audio par défaut pour la session. Il s’agit normalement du son carte, sauf en cas d’exécution sous Services Terminal Server, auquel cas le bip est rendu sur le client.
Exemples
L'exemple ci-dessous illustre l'utilisation de cette fonction.
Beep( 750, 300 );
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP [applications de bureau | applications UWP] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau | applications UWP] |
Plateforme cible | Windows |
En-tête | utilapiset.h (inclure Windows.h) |
Bibliothèque | Kernel32.lib |
DLL | Kernel32.dll |