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

Voir aussi

Fonctions de gestion des erreurs

MessageBeep

Notification de l’utilisateur