最近做的C#播放音乐(.wav文件)的小程序: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Runtime.InteropServices; namespace test ... { public partial class Form1 : Form ...{ public Form1() ...{ InitializeComponent(); } MusicPlayer music = new MusicPlayer(); public int temp = 0; private void Form1_Load(object sender, EventArgs e) ...{ } private void button1_Click(object sender, EventArgs e) ...{ if (temp == 0) ...{ music.Stop(); music.Play(@"..demo.wav"); //文件存放的路径 } else ...{ music.Play(@"..demo.wav"); } } private void button2_Click(object sender, EventArgs e) ...{ temp = 1; music.Pause(); } private void button3_Click(object sender, EventArgs e) ...{ temp = 0; music.Stop(); } } public class MusicPlayer ...{ [DllImport("winmm.dll")] private static extern long mciSendString(string strCommand, string strReturn, int iReturnLength, IntPtr hwndCallback); public MusicPlayer() ...{ } //播放器状态 public string Status ...{ get ...{ string sCommand = "status MediaFile mode"; string ret = ""; mciSendString(sCommand, ret, 10, IntPtr.Zero); return ret.Trim(); } } //打开音乐文件 private void Open(string sFileName) ...{ string sCommand = "open "" + sFileName + "" type mpegvideo alias MediaFile"; // MediaFile是选择播放文件类型 string ret = null; mciSendString(sCommand, ret, 0, IntPtr.Zero); } //播放音乐 public void Play(string filename) ...{ Open(filename); string sCommand = "play MediaFile"; string ret = null; mciSendString(sCommand, ret, 0, IntPtr.Zero); } //停止播放音乐 public void Stop() ...{ string sCommand = "close MediaFile"; string ret = null; mciSendString(sCommand, ret, 0, IntPtr.Zero); } //暂停音乐 public void Pause() ...{ string sCommand = "pause MediaFile"; string ret = null; mciSendString(sCommand, ret, 0, IntPtr.Zero); } }} VS2005调试通过。