现在有一个用delphi自带的TMediaPlayer控件播放mp3文件的程序,当调用Close方法结束播放后,程序仍然占用着这个文件,使得用TFileStream.Create(sFileName, fmOpenReadWrite, fmShareDenyNone)打开这个文件的时候报错,并且,运行一次程序,播放过的mp3文件都被程序占用,无法让其他程序用写方式打开。请各位朋友帮忙看看,谢谢:)
调试欢乐多
你试试:
MediaPlayer1.Stop;
MediaPlayer1.Close;
MediaPlayer1.FileName:='';
或者你贴出代码看看。
我的代码和你写的一样
if ((mpMain.Mode = mpPlaying) or (mpMain.Mode = mpPaused)) then
begin
mpMain.Stop;
mpMain.Close;
mpMain.FileName := '';
end;
不行哦,大家在帮忙看看:)
文件不是只读的。
感谢热心的帮助哦,很欣赏遇到问题自己尝试解决的程序员,呵呵:)
MP3 XP
AutoOpen一直都是false的。
应该和系统没有关系的,不过我还是特意换了两台机器看了一下,问题依然。
不是,我试过的几台机器都是如此。
如果你感兴趣,希望你编一个这样的程序具体看一下。
我后来发现,文件其实也删除了,但从文件所在文件夹看文件仍然在,关掉程序后文件才消失,有点奇怪哦,呵呵:)