0

我正在制作一个程序,它会在启动时播放一些音乐,这很容易。我想要的是将音乐文件保存为解决方案的一部分,以便始终播放音乐,而不是将程序指向保存音乐的位置:

Dim wavMusic As String = "\\My Documents\Visual Studio 2010\Song.wav"

因此,例如,如果我将应用程序移动到另一台计算机上,它将无法找到歌曲。所以我想把那首歌作为 .exe 的一部分,这样它就可以随时找到它。谢谢。

哦,我正在使用 vb 和 winforms,因为我在学校做这件事,那里不使用 C 和 WPF 等令人愉快的东西。

4

2 回答 2

3

将它放在您的项目资源中,可作为项目属性中的选项卡访问。您可以使用该My.Resources属性访问所有资源。所以:

  • 在解决方案资源管理器中双击我的项目
  • 转到资源选项卡
  • 将您的文件拖到大空白区域
  • 在您的代码中,以My.Resources.Song

瞧!

于 2012-07-23T00:48:05.477 回答
0

您可以在资源文件中嵌入音频文件作为资源:

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

private void btnDemo2_Click(object sender, EventArgs e)
{
    try
    {
        SoundPlayer sndplayr = new 
            SoundPlayer(PlayWavFiles.Properties.Resources.LoopyMusic);
        if (btnDemo2.Text == "Demo WAV 2")
        {
            sndplayr.PlayLooping();
            btnDemo2.Text = "STOP";
        }
        else
        {
            sndplayr.Stop();
            btnDemo2.Text = "Demo WAV 2";
        }
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message + ": " + ex.StackTrace.ToString(), 
            "Error");
    }
}

请参考这篇文章: http: //www.codeproject.com/Articles/17422/Embedding-and-Playing-WAV-Audio-Files-in-a-WinForm

于 2012-07-23T00:48:19.567 回答