Localizar pastas na unidade C
Estou usando a seguinte linha para procurar as pastas na unidade C
FindFirst(´C:\*.*´,faDirectory,Busca)
e passando ´Concat(´C:\´,Busca.Name)´ no parametro Dir da função ´ForDiretorio´ para garantir que SOMENTE DIRETÓRIOS FORAM ENCONTRADOS. O problema é que estou recebendo false para as pastas com a propriedade ´somente leitura´...
function TForm1.ForDiretorio(Dir: String): Boolean;
begin
if ((Dir ´.´) and (Dir ´..´)) and
((FileGetAttr(Dir) = faDirectory)) then
result:= true
else
result:= false;
end;
...e se faço essa alteração, recebo true para tudo o que for encontrado (pastas e arquivos)...
function TForm1.ForDiretorio(Dir: String): Boolean;
begin
if ((Dir ´.´) and (Dir ´..´)) or
((FileGetAttr(Dir) = faDirectory)) then
result:= true
else
result:= false;
end;
Gostaria de saber onde está o erro e como corrigi-lo...
FindFirst(´C:\*.*´,faDirectory,Busca)
e passando ´Concat(´C:\´,Busca.Name)´ no parametro Dir da função ´ForDiretorio´ para garantir que SOMENTE DIRETÓRIOS FORAM ENCONTRADOS. O problema é que estou recebendo false para as pastas com a propriedade ´somente leitura´...
function TForm1.ForDiretorio(Dir: String): Boolean;
begin
if ((Dir ´.´) and (Dir ´..´)) and
((FileGetAttr(Dir) = faDirectory)) then
result:= true
else
result:= false;
end;
...e se faço essa alteração, recebo true para tudo o que for encontrado (pastas e arquivos)...
function TForm1.ForDiretorio(Dir: String): Boolean;
begin
if ((Dir ´.´) and (Dir ´..´)) or
((FileGetAttr(Dir) = faDirectory)) then
result:= true
else
result:= false;
end;
Gostaria de saber onde está o erro e como corrigi-lo...
Thaleshcv
Curtidas 0