if FindFirst(GetPath(Parent) + '\*.*', faAnyFile, F) = 0 then
begin
repeat
if (F.Name <> '.') and (F.Name <> '..') then
continue;//此句会被编译器屏蔽,搞得我整个D盘数据都被删了!
until FindNext(F) <> 0;
FindClose(F);
解决方案 »
- 如何获取LAN中服务器的系统时间?
- 对dbgrid中的数据进行修改为什么老是出错?
- delphi5,delphi6,delphi7有什么差别,哪个最好,哪个最经典?
- 怎么让combobox实现ie的地址栏!!!谢谢
- 请推荐几个常用的测试工具,最好网上有下载。
- 哪位GG有自动关机的代码发给我如何? [email protected]
- 有没有效率比较高的替换函数?stringreplace的效率在大文本时效率太低了
- 简单问题,怎么才能把这个函数的返回值转换成字符串放在一edit1.text中。50分
- 小女子有一道难题请教各位大哥
- delphi在读取TXT文本文件时直接跳到下一行的开头?
- 生成条码的问题,高手请进。
- 各路大侠请帮忙!
procedure TMainForm.FindFiles(APath: String);
var
FSearchRec,
DSearchRec: TSearchRec;
FindResult: integer;
// fData:WIN32_FIND_DATA;
function IsDirNotation(ADirName: String): Boolean;
begin
Result := (ADirName = '.') or (ADirName = '..');
end;begin
APath := GetDirectoryName(APath);
FindResult := FindFirst(APath+FFileName,faAnyFile+faHidden+
faSysFile+faReadOnly,FSearchRec);
try
while FindResult = 0 do
begin
ExtractFileExt(StrPas(FSearchRec.FindData.cFileName));
lbFiles.Items.Add(LowerCase(APath+FSearchRec.Name));
FindInfoInfiles(APath+FSearchRec.Name,edtFileInfo.Text);
FindResult := FindNext(FSearchRec);
end; FindResult := FindFirst(APath+'*.*', faDirectory, DSearchRec);
while FindResult = 0 do
begin
if ((DSearchRec.Attr and faDirectory) = faDirectory)
and not IsDirNotation(DSearchRec.Name) then
begin
FindFiles(APath+DSearchRec.Name); // Recursion here
end;
FindResult := FindNext(DSearchRec);
end;
finally
FindClose(FSearchRec);
end;
end;