delphi中SysUtils.FindClose(sch);是什么意思
1个回答
展开全部
关闭文件查找句柄(FindFirst返回的),就是查找某个目录下有什么文件.一般用法如下:
var DR: TSearchRec;
ZR: Integer;
begin
ZR:=FindFirst('D:\aaa\*.*', FaAnyfile, DR);
try
while ZR = 0 do
begin
if ((DR.Attr and FaDirectory <> FaDirectory)
and (DR.Attr and FaVolumeID <> FaVolumeID))
and (DR.Name <> '.') and (DR.Name <> '..') then
begin
showmessage(DR.Name);//显示找到的文件名
end;
ZR := FindNext(DR);
end;//end while
finally
SysUtils.FindClose(DR);//关闭句柄
end;
end;
还有,这里为什么要在FindClose前加上SysUtils单元名是因为Windows单元也用一个函数叫FindClose,但是参数不一样,如果你单元时引用Windows和SysUtils两个单元的话,它有可能会认为WIndows里的那个导致编译不过,所以前面需要加上单元名限定.
var DR: TSearchRec;
ZR: Integer;
begin
ZR:=FindFirst('D:\aaa\*.*', FaAnyfile, DR);
try
while ZR = 0 do
begin
if ((DR.Attr and FaDirectory <> FaDirectory)
and (DR.Attr and FaVolumeID <> FaVolumeID))
and (DR.Name <> '.') and (DR.Name <> '..') then
begin
showmessage(DR.Name);//显示找到的文件名
end;
ZR := FindNext(DR);
end;//end while
finally
SysUtils.FindClose(DR);//关闭句柄
end;
end;
还有,这里为什么要在FindClose前加上SysUtils单元名是因为Windows单元也用一个函数叫FindClose,但是参数不一样,如果你单元时引用Windows和SysUtils两个单元的话,它有可能会认为WIndows里的那个导致编译不过,所以前面需要加上单元名限定.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询