SoundPlayer 可以播放WAV文件。如果直接给出WAV文件的路径很简单。SoundPlayer player = new SoundPlayer();
player.SoundLocation = "C:\\Resources\\sound\\msg.wav";
player.Play();这样就可以了。
如果将WAV文件加入资源,如何用SoundPlayer播放该文件呢?很头疼。

解决方案 »

  1.   

    怎么用相对路径呢?
    编译的时候WAV是被编译到EXE中的
      

  2.   

    就是在工程下面加个文件夹,然后手动添加WAV文件,而不是以资源形式添加
      

  3.   

    这个文件夹每次编译也是会编译到一起的,你编译一下看bin里面就知道了
      

  4.   

    谢谢各位,我自己解决了。要把 资源中WAV文件的Persistence属性改为 內嵌於 .resx ,
    然后用这个方法即可解决
     SoundPlayer player = new SoundPlayer(EIPNotify.Properties.Resources.msg);
     player.Play();
    //EIPNotify 工程名称。
      

  5.   

    yaoshuwen()
    最初我就是用你这种方法做的,但是后来发现问题,如果有人将WAV文件删除,整个程序就无法运行。将WAV加入资源就没有这个问题了。使用的音频文件作为资源嵌入到了程序中,这样在安装程序时就不再需要将外部的Wave文件一起打包了,同时这种方法也排除了在安装程序后音频文件被移除或替换的潜在可能。
      

  6.   

    但是同时你也无法替换了,其实用个try捕捉一下就不会有错误丫
      

  7.   

    把wav文件加到资源里后  会自动生成代码Properties.Resources.[NAME]
                using (Stream s = Properties.Resources.[NAME])
                {
                    SoundPlayer sndPing = new SoundPlayer(s);
                    sndPing.Play();
                }
    或者调用Assembly.GetManifestResourceStream(resourceName))获得资源流
      

  8.   

    http://www.cnblogs.com/hfyb/archive/2007/01/23/628232.html
    著個應當是你想要的
      

  9.   


    谢谢各位,gengchengxiang() 告诉了我想要的