Logo UGIdotNET

Suonare i suoni di sistema

Per suonare i suoni di sistema, quelli che l'utente può cambiare dal Control Panel, bisogna utilizzare l'API PlaySound .

<DllImport("WINMM.DLL", CharSet:="CharSet.Auto)"> _
Public Shared Function PlaySound (ByVal lpszName As String, ByVal hModule As Long, ByVal dwFlags As Long) As Long
End Function

A quel punto bisogna però conoscere il nome dell'evento...
Gli unici suoni predefiniti disponibili su tutte le versioni di Windows sono:

  • SystemAsterisk
  • SystemExclamation
  • SystemExit
  • SystemHand
  • SystemQuestion
  • SystemStart

Se necessitate di altri suoni, come ad esempio quello associato all'arrivo di una mail, dovete guardare nel registry, li trovate elencati in HKCU\AppEvents\EventLabels.
Non tutti i nomi sono chiarissimi, ma ad esempio il suono dell'arrivo delle mail è MailBeep.
Quindi il codice per suonarlo diventa:

Public Const SND_ASYNC As Long= &H1 'Suona in modo asincrono
Public Const SND_ALIAS As Long = &H10000 ' Si vuole usare un suono di sistema

PlaySound("MailBeep", 0, SND_ASYNC Or SND_ALIAS)

Autore: Lorenzo Barbieri
Data: 15 marzo 2005
Ultimo aggiornamento: 16 marzo 2005
Categorie:  Varie

© 2001 User Group Italiano UGIdotNET. Tutti i diritti riservati. Note legali. - Partita IVA 01927050185