播放组件为什么在WIN7上关闭-----时会弹出内存错误?
调用的是Delphi导入的内置的组件
在XP下测试和试用没有问题,但在WIN7关闭时,却一直弹出错误框N个,我晕..
高手帮分析下,快崩溃了..
//视频播放
procedure TMainForm.LoadAvi;
var
i,j:Integer;
f:string;
playfile:string;
s1:string;
begin
try
//查询数据库
with DataM.Q2 do
begin
Close;
SQL.Clear;
SQL.Add('Select top 1 * from Files where type=''跌'' order by num ');
s1:= sql.GetText;
Open;
if RecordCount>0 then
begin
PlayFile:=VarToStr(FieldValues['Path'])+VarToStr(FieldValues['Filename']);
if FileExists(PlayFile)=true then
begin
MSMediaPlayer1.Invalidate;
MSMediaPlayer1.FileName:=PlayFile;
MSMediaPlayer1.Play;
end;
end;
end;
except
end;
[解决办法]
Xp是32位系统,Win7是64位系统,你的控件是不是只能在32位系统下执行。
还有一点上面的语句跟你提一下:
if FileExists(PlayFile)=true then
这样写看起来有些怪癖,直接把后面的=true去掉;效果是一样的。
这样写是不是更直接呢?
if FileExists(PlayFile) then