我正在尝试播放特定的声音。 但是,我似乎无法访问我在解决方案资源管理器中添加的文件。 (我有一个名为“Sounds /”的文件夹,里面有几个.wav-soundeffects)
当我将文件路径硬编码到我的硬盘上的随机固定位置时,它可以正常工作。此外,当我将我的资源放在我的“bin / debug /”文件夹中时,它工作得很好(这是我最接近使用AppDomain.CurrentDomain.BaseDirectory
函数的工作相对路径。)
使用我在解决方案资源管理器中添加的文件时,如何使SoundPlayer工作?
答案 0 :(得分:4)
您可以将它们作为项目资源嵌入到dll / exe中,然后通过Application对象使用它们:
添加和编辑资源(Visual C#)
http://msdn.microsoft.com/en-us/library/7k989cfy%28v=vs.90%29.aspx
您也可以使用资源管理器(如果您希望单独提供声音文件,可以使用更好的选项):
资源经理
http://msdn.microsoft.com/en-us/library/system.resources.resourcemanager%28v=vs.110%29.aspx
答案 1 :(得分:3)
System.Media.SoundPlayer player = new System.Media.SoundPlayer(@"c:\mywavfile.wav");
player.Play();
或 您可以使用资源将声音文件嵌入到项目中。
System.Media.SoundPlayer player = new System.Media.SoundPlayer(Resources.Yourfile);
player.Play();
更新:将声音文件添加到资源时,您可以通过文件名访问它。