如何在 C# 控制台应用程序中播放背景音乐

How to play background music in a C# Console Application

所以我用 C# 制作了一个基于文本的小游戏,但我想要一些音乐,我试过这个:

System.Media.SoundPlayer player = new System.Media.SoundPlayer();
player.SoundLocation = "c:\PathToMusic\..music.wav";
player.Play();

这行得通,但是当我将我的应用程序构建到一个 .exe 文件时,它不包括在内,所以当其他人在特定文件夹中没有该特定声音时,它将无法工作。
我已将该文件添加到我的解决方案资源管理器,但不知道该文件位置的名称。

试试这个解决方案:

将音乐文件添加到解决方案

项目 -> 添加现有项目... -> 添加您的 .wav 文件。

将文件设置为Copy always

  1. 在解决方案资源管理器中单击音乐文件。
  2. 在“属性”面板中,将 Copy to Output Directory 设置为 Copy always
  3. 此外,将 Build Action 设置为 Content

这将使 Visual Studio 始终将音乐文件复制到输出目录(例如调试文件夹)。

使用此代码

using System.Media;  

SoundPlayer player = new SoundPlayer();
player.SoundLocation = AppDomain.CurrentDomain.BaseDirectory + "\yourmusic.wav";
player.Play();

首先添加您的资源。然后在解决方案资源管理器中单击它。在属性面板中,将构建操作设置为资源。

接下来这样访问:

player.Stream = new MemoryStream(Properties.Resources.gameMusic);