一个小问题,麻烦进来的哥们请帮我解答下,东西比较赶时间,一时想不到好的方法。thanks问题描述:
需要判断所有盘根,是否存在一个特定的文件夹,例"csdn"文件夹。
我是这样做,for i:= 65 to 90 do // 从A到Z 盘符
begin
if DirectoryExists(pchar(chr(i)+':\csdn')) then
end;看起来像搞定了,但是当访问A盘(软盘)时,会出现一个软盘错误提示什么的。
就在这里,纠结没有一个好的方法来判断,如果说不从A盘开始,从C盘开始遍历,
但是我还是担心用户机器里面有一些特别的驱动器,比如打印机、扫描仪,各种乱七八糟无法预料的盘符,会出现如软盘那种的提示。纠结万分,想完美点啊。
需要判断所有盘根,是否存在一个特定的文件夹,例"csdn"文件夹。
我是这样做,for i:= 65 to 90 do // 从A到Z 盘符
begin
if DirectoryExists(pchar(chr(i)+':\csdn')) then
end;看起来像搞定了,但是当访问A盘(软盘)时,会出现一个软盘错误提示什么的。
就在这里,纠结没有一个好的方法来判断,如果说不从A盘开始,从C盘开始遍历,
但是我还是担心用户机器里面有一些特别的驱动器,比如打印机、扫描仪,各种乱七八糟无法预料的盘符,会出现如软盘那种的提示。纠结万分,想完美点啊。
加个个try,然后忽略这个异常就可以了。
try中捕获该异常,然后不做任何处理,就不会弹出错误提示了。
然后其他驱动器可以遍历时先判断它是否可用,例如光驱中是否已插入光盘,如果已经插入光盘再去找这目录。