在delphi7中想打造一个能播放背景音乐的程序,相关代码如下:
procedure TForm1.FormCreate(Sender: TObject);
begin
  MCISendString('OPEN c:\huimeng.mid TYPE SEQUENCER alias yinyue', '', 0, 0);
  MCISendString('PLAY yinyue', '', 0, 0);
  MCISendString('CLOSE ANIMATION', '', 0, 0);
end;
但是运行时没有什么效果,也没有错误提示,下断点也没找出问题所在,请各位高手帮帮忙
 uses里面加了MMsystem的

解决方案 »

  1.   

    没用过MCISendString函数,单从语句上看象是设备一打开就关闭了,如语法正确则将“MCISendString('CLOSE ANIMATION', '', 0, 0);”放到Form的Close方法去看看有没有效果。procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
    begin
    MCISendString('CLOSE ANIMATION', '', 0, 0);
    end;
    下面是我的习惯做法...
    从system面板中拖个MediaPlayer1控件放在FORM中;
    将控件的visible属性设为False(背景播放);
    procedure TForm1.FormCreate(Sender: TObject); 
    begin 
    MediaPlayer1.FileName:='c:\huimeng.mid';
    try
      MediaPlayer1.Open;
     except
      if MediaPlayer1.Error>=0 then
         begin
         ShowMessage('无法正常播放音乐!');
         MediaPlayer1.Close;
         end
       else
         MediaPlayer1.Play;
    end;
    end;