通过一个for 循环 遍历每一个驱动器<br>procedure TForm1.Button1Click(Sender: TObject);<br>var<br> i ,rtn:integer;<br> rootPN:string;<br>begin<br><br> for i:=65 to 90 do<br> begin<br> rootPN:=char(i)+':/';<br> rtn:=getdrivetype(pchar(rootPN));<br> end<br>end;<br>根据返回值决定是否搜索该驱动器,对于drive的搜索采用递归算法,<br>即根目录-〉根目录下第一个子目录-〉根目录下第一个子目录下第一<br>个子目录.....至于所用的函数,像findfirst,findnext,findclose,<br>findfile,filesearch,有很多,获取dirname用directoryName(),还有<br>关于目录中'.'和'..'的含义要搞清楚,这些随机帮助里有说明。至于<br>具体算法就看你的基本功了,注意出入口。希望有人能找到可查子目录<br>中文件的函数或部件。<br> 另: EXtractFilepath()及 EXtractFileXXX可以用一用。