Oct
29
|
|
En utilisant une veille application que j’avais faite en DelphiW, j’ai constaté un beepW pénible à chaque fois que je changeais d’élément sélectionné dans une liste…
Après avoir fouillé tout mon code à la recherche de Beep
, PlaySound
, sndPlaySound
, en vain, j’ai été vérifié mon réglage Windows sur l’événement Sélectionner :
Si je spécifie un son… j’ai alors le son spécifié qui est joué… mais également dans les autres applications, comme un explorateur Windows par exemple…
Je vérifie dans WBFHQ et j’ai le même problème dans les listes de fichiers XML ou les joueurs à comparer…
(idea) Je pense immédiatement à une solution de contournement qui serait de créer un son muet très court et de l’affecter à l’événement… mais, cela ne résoudrait le problème que sur ma machine… comment le faire pour l’application ?
Après quelques recherches sur Google, je découvre assez rapidement la cause :
- C’est un bug Windows à cause d’une malheureuse petite constante oubliée, et qui se produit sous Vista uniquement, ayant été corrigé sous 7.
- De plus amples informations sur cette page : The story behind the mysterious “Ding” in Windows Vista.
J’ai finalement trouvé une page sur le support Microsoft qui m’a donné les symptômes si précis que la solution est devenue évidente :
- You hear a beep sound when you change the selection in a classic style ListView when the « Select » option for the system sound is set to « None » in Windows Vista
- Je retourne sous Delphi,
- ajoute un composant TXPManifest, sur ma fiche…
- relance l’application, et le son a disparu comme par enchantement !
L’élévation avec les droits d’administrateur n’est plus nécessaire pour obtenir les ressources, l’enchainement des tabulations dans la fiche de configuration de WBFHQ et publié une nouvelle version.
Derniers commentaires