可惜这个问题没人答,我也想知道,
查看    mmsystem.h   // bcb中midiStreamOpen ()
        mmedia.hlp   // API中midiStreamOpen ()
看得累死!!!!
   现在我只知道读资源流这一步,
   怎样放这个流,还不知;
 

解决方案 »

  1.   

    建议移到DELPHI栏,答的人多,因DELPHI 跟BCB 编程类似;
    我们现缺少 API 编程方面的书,MIDI流还涉及回调函数等,
    弄不懂; 
      

  2.   

    MCI API可能简单些,我正在查资料
      

  3.   

    到delphi版去看看,有一篇相关的贴子。
      

  4.   

    http://www.csdn.net/expert/Topic/50729.shtm
      

  5.   

    NowCan你好:
       我在信箱里,收到了你的留言,咱们确是老乡,多多交流;你可能是拨号上网,很少见
    到你,这里是专线上网,若不出故障,白天都在线;
       关于你提出的问题:
       直接用API 播放MIDI流,能行,但苦于无资料,大家似乎也无能为力;我建议
    先将资源MIDI流,存成MIDI文件,再用MCI 的MCISendString("PLAY FILEName.MID",...)
    播放出来;
    如:  资源文件test.rc,这是一个纯文本文件,内容如下:
           MidiID      MIDI        "filename.mid"
    并将test.rc,用Add Project加到BCB或delphi工程中,
    会自动编译成test.res, 工程编译后,这个Filename.mid
    会自动嵌入到  .exe中,就可脱离原filename.mid;
    在程序中,将访问到这个资源流:
     #include "mmsystem.h"   // MCI API头定义
     TResourceStream *rs=
          new TResourceStream((int)HInstance,"MidiID","MIDI");
     rs->SaveToFile("filename.mid");   // 再存成文件,有点可笑
     delete rs;
     SendMCIString("play filename,mid",NULL,0,NULL);  有点勉强.
              
      

  6.   

    错了,应为
    mciSendString(    )