Часто приходиться делать в своих программах звуковое оповещение, но возникает вопрос, как?

Первое что часто делают это кидают звуковой файл в формате .WAV в папку, где находиться программа и пишут такой код :

My.Computer.Audio.Play(IO.Directory.GetCurrentDirectory & "/Sound.wav") ' Воспроизводит звуковой файл из папки исполняемого файла

Вроде бы все верно, но забывают одно, что пользователь может удалить этот звуковой файл и тем самым выведет программу из работоспособности.

Сейчас я покажу пример, как избавиться от ошибки в случае удаления файла и воспроизвести другой звук.

' Если файл существует то воспроизводим его
If IO.File.Exists(IO.Directory.GetCurrentDirectory & "/Sound.wav") Then
My.Computer.Audio.Play(IO.Directory.GetCurrentDirectory & "/Sound.wav")
Else ' Иначе если файл не существует то, воспроизведем один из системных звуков.
Beep()
End If

Если звуковой файл существует то мы воспроизведем его, а если нет, то воспроизведем системный звук.

Особо хороший вариант, запускать звуковой файл из ресурсов, а как это сделать, Вы можете прочитать в статье под названием - «Проигрывание звукового файла из ресурсов»

Системные звуки:

My.Computer.Audio.PlaySystemSound(Media.SystemSounds.Asterisk)
My.Computer.Audio.PlaySystemSound(Media.SystemSounds.Exclamation)
My.Computer.Audio.PlaySystemSound(Media.SystemSounds.Hand)
My.Computer.Audio.PlaySystemSound(Media.SystemSounds.Question)

Системные папки:

MsgBox(System.Environment.GetFolderPath(Environment.SpecialFolder.Desktop)) ' Папка рабочего стола
MsgBox(System.Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles)) ' Папка ProgramFiles
MsgBox(System.Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)) ' Папка общего хранения пользователей
MsgBox(System.Environment.GetFolderPath(Environment.SpecialFolder.Personal)) ' Папка для хранения изображений
MsgBox(System.Environment.GetFolderPath(Environment.SpecialFolder.Programs)) ' Папка содержая программы всех пользователей
MsgBox(System.Environment.GetFolderPath(Environment.SpecialFolder.MyMusic)) ' Папка моя музыка
MsgBox(System.Environment.GetFolderPath(Environment.SpecialFolder.MyPictures)) ' Папка мои изображения
MsgBox(System.Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)) ' Папка мои документы
MsgBox(System.Environment.GetFolderPath(Environment.SpecialFolder.System)) ' Системная папка
MsgBox(System.Environment.GetFolderPath(Environment.SpecialFolder.MyComputer)) ' Папка мой компьютер

Урок №12 - Работа с файлами и директориями в VB.NET   | Содержание | Урок №14 - Создание динамических элементов и работа с ними в VB.NET