将声音文件添加到资源并从 .NET (C#) 中访问它






1.77/5 (9投票s)
我们如何从资源中访问声音文件,而不是从任何其他位置?
引言
实际上,在这篇文章中,我正在从我们的项目资源中访问声音文件。 很多时候,我们会在项目中用到声音,但在以前,我将声音文件放在不同的位置,然后访问它。 这对那些想要隐藏项目资源并希望使项目可移植的人来说很有用。
Using the Code
- 在解决方案资源管理器中右键单击您的项目名称。
- 将光标指向 添加,然后选择 现有项目...
- 现在转到声音文件的位置并选择该声音文件。
- 现在在解决方案资源管理器中选择您的声音文件,然后右键单击它,选择属性并将 生成操作 属性(从 内容 更改为 嵌入式资源)
- 生成 程序或一次 调试 程序。
- 现在,如果您想在加载特定窗体时播放声音文件,请在
Form_Load
事件中使用给定的代码。
注意:在此代码中,Dreamer.wav 是声音文件的名称。
//
// Any source code blocks look like this
//
using System.Reflection;
using System.IO;
using System.Resources;
using System.Media;
using System.Diagnostics;
namespace Yournamespace
{
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
private void Form2_Load(object sender, EventArgs e)
{
Assembly assembly;
Stream soundStream;
SoundPlayer sp;
assembly = Assembly.GetExecutingAssembly();
sp = new SoundPlayer(assembly.GetManifestResourceStream
("Yournamespace.Dreamer.wav"));
sp.Play();
}
}
}
/*SoundPlayer sp = new SoundPlayer
(global::WindowsApplication1.Properties.Resources.yoursoundfilename); */
关注点
现在是凌晨 1:57,我得走了。 实际上,还有其他一些技术可以从资源中访问声音文件。 我只是给出了一个例子,该例子在上面的代码注释中提到。
历史
- 2011 年 1 月 20 日:初始帖子