procedure FindAllFile(const Dir: string;List: TStringlist);
var
hFindFile: THandle;
FindFileData: WIN32_FIND_DATA;
FullName,FName,s:string;
begin
s:=IncludeTrailingPathDelimiter(Dir);
hFindFile := FindFirstFile(pchar(s+'*.*'), FindFileData);
if hFindFile <> 0 then begin
repeat
FName:=FindFileData.cFileName;
FullName:=s+FName;
if (FName='.') or (FName='..') then continue;
if (FindFileData.dwFileAttributes and FILE_ATTRIBUTE_DIRECTORY) = FILE_ATTRIBUTE_DIRECTORY then
//FindAllFile(FullName,List) //递归包含子目录
else
begin
List.Add(FullName);
end;
until FindNextFile(hFindFile, FindFileData) = false;
windows.FindClose(hFindFile);
end;
end;
var
hFindFile: THandle;
FindFileData: WIN32_FIND_DATA;
FullName,FName,s:string;
begin
s:=IncludeTrailingPathDelimiter(Dir);
hFindFile := FindFirstFile(pchar(s+'*.*'), FindFileData);
if hFindFile <> 0 then begin
repeat
FName:=FindFileData.cFileName;
FullName:=s+FName;
if (FName='.') or (FName='..') then continue;
if (FindFileData.dwFileAttributes and FILE_ATTRIBUTE_DIRECTORY) = FILE_ATTRIBUTE_DIRECTORY then
//FindAllFile(FullName,List) //递归包含子目录
else
begin
List.Add(FullName);
end;
until FindNextFile(hFindFile, FindFileData) = false;
windows.FindClose(hFindFile);
end;
end;
解决方案 »
- 各位大哥,请问如何判断字符是否是GB2312-80字符集编码范围之内的字符
- delphi如何实现厨房打印
- 求1名长在线的顾问,小弟给的不多500元1个月,要求见内容
- 安装后运行,提示没找到VCLJPG70.BPL?
- 如果删除一个文本文件中的空格行.....?
- 程序在打包运行后,有时候窗体出现“子窗体没有菜单”的错误提示是怎么回事?
- 请问如何获取当前WINDOWS操作系统的语言种类?如简体、繁体或英文。
- 三层结构,对视图的修改无法提交?
- 高手指教,两个exe之间怎样传递参数?
- 如何判断文件是否存在?
- 求:idudpserver打开ThreadedEvent后出现"尚未调用CoInitialize"
- 树形目录显示不同颜色
List: TStringList;
Dir: String;
begin
List := TStringList.Create;
Dir := 'C:\Program Files\Borland\Delphi7\Bin';
FindAllFile(Dir, List);
// 进行你的操作
...
List.Free;
end;
看这个过程,你的目的是:将文件名列入list中,那么这里应该用:const Dir: string;VAR List: TStringlist
因为调用过程的结果是放入这个List中,那么就需要返回它.
对于List类型,做为参数本身就是引用传递,无需Var