对于C ++,有一个函数,PlaySound,可用于,呃,播放声音。 C#有这样的东西吗?我有一个应用程序,我想在它启动时播放系统声音,以宣告它的启动。
GOT是一种方式。我希望。
我想把它放在Form_Load事件的末尾:
private void Form1_Load(object sender, EventArgs e)
{
/*
A bunch of configuration and initialization stuff
*/
PlayBeepBoop();
}
private void PlayBeepBoop()
{
PlaySystemSound("Beep");
}
答案 0 :(得分:8)
答案 1 :(得分:4)
我知道播放系统声音的三种方式。
最通用的是要打印的语言不可知的\a
字符,它会发出非常标准的哔声。
Console.WriteLine("\a");
第二种方法可让您直接访问少量声音,例如“感叹号”。和' Hand'。它们位于SystemSounds
类(来自Systems.Media
命名空间),用法非常简单。
SystemSounds.Hand.Play();
最后,最后一种方法可以让您访问所有其他Windows系统声音。您所要做的就是创建一个SoundPlayer
,它也位于Systems.Media
命名空间中,并手动加载声音。所有系统声音都位于同一个地方,所以很容易做到。
new System.Media.SoundPlayer(@"C:\Windows\Media\tada.wav").Play();
答案 2 :(得分:3)
您可以使用此课程以“.wav”格式播放任何声音。例如,您可以在“C:\ Windows \ Media”(Windows 7)中找到Windows声音。
public class Wav
{
[DllImport("winmm.dll", CharSet = CharSet.Auto)]
private static extern bool PlaySound(String lpszName, IntPtr hModule, Int32 dwFlags);
public static bool Play(string wavFileName)
{
try
{
return PlaySound(wavFileName, IntPtr.Zero, 0);
}
catch
{
return false;
}
}
}