在哪里放置 .mp3 文件在可视化 C# 项目中。?

Where to put .mp3 file in visual C# project.?

我正在使用 Visual C# Winforms 设计一个小型应用程序。我正在使用 NAudio 并播放 .mp3 文件。下面是代码:

IWavePlayer waveOutDevice = new WaveOut();
AudioFileReader audioFileReader = new AudioFileReader("ringtone.mp3");

waveOutDevice.Init(audioFileReader);
waveOutDevice.Play();

我已将此 ringtone.mp3 保存在调试文件夹中。但是我想如果我在另一个系统上使用这个exe。那么这个mp3就不行了。所以我想知道我可以在项目中的什么地方保存这个 mp3 文件以及如何使用它。

只需将其添加到项目中即可。 右键单击项目 => 添加 => 现有项目... 从文件选择器中选择文件。 它将在编译时发送到输出文件夹。

选项 1: 您必须确保 mp3 文件始终与 exe 文件位于同一文件夹中。也许创建一个安装程序,将两个文件复制到同一个文件夹中。

选项 2: 将 mp3 文件嵌入到 exe 中。只需将 mp3 复制到您的 Visual Basic 解决方案中并将其 Build Actions 设置为 Embedded Resource

然后在你的代码中你会用这个来引用它:

Stream mp3FileStream = Assembly.GetEntryAssembly().GetManifestResourceStream("YourSolution.ringtone.mp3");

这将 return 一个 Stream 对象。您将不得不了解如何将其传递给您的 IWavePlayer 对象。

我的猜测是这样的waveOutDevice.Init(mp3FileStream),但我什至没有测试过。