首先我要告诉你的是:我也没实际弄过Wave文件,更不清楚真正的格式。我如下办法只是猜测:1、时间定位:Wave的采样率有11KHz、22KHz、44KHz。那么每11K、22K、44K个字(注意!不是字节)就是一秒的声音。2、格式:我所知道的Wave格式是这样的(以前弄过)。立体声:Type SSound16
  RD As Integer
  LD As Integer
End TypeType SSound8
  RD As Byte
  LD As Byte
End Type单声道Type MSound16
  MD As Integer
End TypeType MSound8
  MD As Byte
End Type目前的难点是我还不清楚WAVE的文件头格式。你可以去找类似的资料。把其中一段音乐的字抓出来,配上新的文件头然后存为一个临时文件就可以用MediaPlay播放了。这仅仅是我想出来的一个很笨蛋的办法。DirectX里有DirectSound和DirectMusic的一些API。你可以去多媒体开发以及游戏论坛里向懂得DirectX的人请教。DirectX虽然多是在VC里应用,但是VB里也可以用,不过方式上有点小小的区别。