Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
你如何用C#播放声音?_C# - Fatal编程技术网

你如何用C#播放声音?

你如何用C#播放声音?,c#,C#,我已经试过了,但我对从我的程序开始的地方播放声音感兴趣。例如,我在项目文件夹中有.wav文件 SoundPlayer simpleSound = new SoundPlayer(@"/yay.wav"); simpleSound.Play(); 多谢各位 例如,我在项目文件夹中有.wav文件 SoundPlayer simpleSound = new SoundPlayer(@"/yay.wav"); simpleSound.Play(); 这可能是你的问题 编译

我已经试过了,但我对从我的程序开始的地方播放声音感兴趣。例如,我在项目文件夹中有.wav文件

   SoundPlayer simpleSound = new SoundPlayer(@"/yay.wav");
    simpleSound.Play();
多谢各位

例如,我在项目文件夹中有.wav文件

   SoundPlayer simpleSound = new SoundPlayer(@"/yay.wav");
    simpleSound.Play();
这可能是你的问题


编译应用程序时,它不会直接出现在项目文件夹中,而是出现在子目录中(或者
/Debug/bin
或者
/Release/bin
)。将wav文件放在那里,而不是放在项目目录中,然后查看其工作原理。

在播放声音之前,您必须熟悉PlaySound()Win32 API函数

private SoundPlayer player = new SoundPlayer();

/// Button click event handler.
private void AsyncBtn_Click(object sender, EventArgs e)
{
    if (openFileDialog1.ShowDialog() == DialogResult.OK)
    {
        // Set .wav file as TextBox.Text.
        textBox1.Text = openFileDialog1.FileName;

        // Add LoadCompleted event handler.
        player.LoadCompleted += new AsyncCompletedEventHandler(LoadCompleted);

        // Set location of the .wav file.
        player.SoundLocation = openFileDialog1.FileName;

        // Load asynchronously.
        player.LoadAsync();
    }
}

/// LoadCompleted event handler.
private void LoadCompleted(object sender, AsyncCompletedEventArgs args)
{
    player.Play();
}

CI右侧的一个键(或一个键)认为如果您使用“\yay.wav”而不是“@”/yay.wav”会更有意义(另一个选项是将.wav文件作为资源包含在内)。