找 找 找(50分)

  • 主题发起人 主题发起人 xch-1
  • 开始时间 开始时间
X

xch-1

Unregistered / Unconfirmed
GUEST, unregistred user!
如何找出硬盘中所有*.EXE *.BAT 文件(空)
请大家帮帮忙。最好有中文注解(delphi 才学两学月)
谢谢。
 
正常情况下,用Findfirstfile()和Findnextfile()两个函数就可以写出
全盘查找的程序了,是通过递归调用。如果你有其他语言的基础,应该不难。
但是自己写的全盘查找程序都比较慢,还是用控件吧。AHM和LMD控件组中都有
全盘文件查找的控件,速度相当快,和Windows自带的查找工具的速度不相上下。
建议你使用这个东西。LMD的文件查找控件名叫LmdFileGrep,如果你安装了
LMD控件,那么它就在LMD SYS 这一页上。

 
用三个函数:
FindFirst
FindNext
FindClose
可以将一个目录下所有的指定类型文件列出来
例子:
var
SearchRec: TSearchRec;
procedure TForm1.SearchClick(Sender: TObject);
begin
FindFirst('c:/Program Files/delphi4/bin/*.*', faAnyFile, SearchRec);
Label1.Caption := SearchRec.Name + ' is ' + IntToStr(SearchRec.Size) + ' bytes in size';
end;
procedure TForm1.AgainClick(Sender: TObject);
begin
if (FindNext(SearchRec) = 0)
Label1.Caption := SearchRec.Name + ' is ' + IntToStr(SearchRec.Size) + ' bytes in size';
else
FindClose(SearchRec);
end;

用一个递归调用,就可以做全盘搜索了。
 
你去"计算机世界"的网站上看看,我记得有一篇讲解遍历硬盘的文章.
计算机世界 http://www.ccw.com.cn/
实用资料 Delphi或C/C++
 
http://www.csdn.net/Delphi/index.htm下有很多例子。
 
计算机世界日报 用C++遍历目录http://www.ccw.com.cn/99/tips/2k03/031703_03.asp
 
多人接受答案了。
 
后退
顶部