Извините, если это преувеличивает очевидное ...
- Вы уверены, что эта строка кода выполняется?
- Как Робс предлагает сыграть в любой другой SystemSounds?
Я посмотрел в отражатель. Какой бы из SystemSounds вы не вызывали, возвращается экземпляр SystemSound, инициализированный с типом (например, 0x40 для Asterix) для системного звука, который вы хотите воспроизвести. Затем он передается в метод Win32 bool MessageBeep (тип int). Импортировано как:
[DllImport("user32.dll", CharSet=CharSet.Auto, ExactSpelling=true)]
internal static extern bool MessageBeep(int type);
Возвращение bool никак не сохраняется - то есть вы не можете его получить: (
Исключения не проглатываются, поэтому вы должны их получить, если их выбросили.
Надеюсь, это поможет (хотя, вероятно, просто говорю вам, что вы уже знаете)