之前在这里看到过一个大牛用Free Pascal写了一个,说是作游戏的时候可以用,但是游戏要写,总还得用Turbo pascal来写,这里想问一下,有没有人会写的?(注:播放不是说执行到播放以后,要等到播放完成才继续执行,就是说,只要用一个函数或者过程打开这个音乐文件,并且让它播放,但是不需要等到播放完,就可以执行后面的代码,应该怎么做?
顺便附带那时候那个大牛写的程序(100%不是我写的,100%是这个版的一个帖子里找来的)
//FreePascal 2.20 调试成功 

PROGRAM TEST_MIDI; 

function MessageBox(hWnd:LONGINT;lpText:PCHAR;lpCaption:PCHAR;uType:DWORD):LONGINT; 
  stdcall; external 'user32.dll' name 'MessageBoxA'; 
function mciExecute(pszCommand:PCHAR) : BOOLEAN; 
  stdcall; external 'winmm.dll' name 'mciExecute'; 

CONST SND_FILENAME : DWORD = $00020000; MB_OK : DWORD = 0; 

var b1 : BOOLEAN; 

BEGIN 
  writeln('initialization! please wait a few second!'); 
  b1 := mciExecute('play H:\DLOAD\翼年代记插曲.mp3'); //这里我稍微改了一下,跟源程序有点不同
  //您也可以更换自己的MIDI背景音乐  
  //mciExecute指针字符串参数:play后的文件名路径必须写完整。 
  //设备初始化需要等待数秒钟 
  MessageBox(0,'播放MIDI音乐,听见了么!','MIDI音乐测试',MB_OK); 
  Writeln(b1); 
  Writeln('按回车键退出程序!'); 
  READLN; 
END. 

那个帖子的地址:
[url]http://www.programfan.com/club/post-268020.html[/url]