Árvore de páginas

Determina se um diretório existe e é válido.

Sintaxe

ExistDir( < cPath >, [ uParam2 ], [ lChangeCase ] )

Parâmetros

Nome

Tipo

Descrição

Obrigatório

Referência

cPath

caractere

Indica o nome do diretório que será verificado.

X

 

uParam2

numérico

Parâmetro de compatibilidade. Passar Nil.

 

 

lChangeCase

lógico

Se verdadeiro (.T.), nomes de arquivos e pastas serão convertidos para letras minúsculas; caso contrário, falso (.F.), não será feito nenhum ajuste no nome do arquivo informado. Valor padrão (.T.). Veja maiores informações em Observações.

 

 

Retorno

Nome

Tipo

Descrição

lRet

lógico

Retorna verdadeiro (.T.), se o diretório existir; caso contrário, falso (.F.).

Observações

  • Caso seja especificado um path sem a unidade de disco, o mesmo será considerado no ambiente do servidor, a partir do RootPath do ambiente (caso o path comece com \ ou /), ou a partir do StartPath do ambiente (caso o path não seja iniciado com \ ou /).
  • Quando um path absoluto é especificado (com unidade de disco preenchida), a função será executada na estação em que o SmartClient está em execução.
  • O valor retornado pela função serve apenas para indicar falha na operação, mas não têm relação com a causa da falha. Para identificar o motivo do erro, devemos chamar a função FError.
  • Ao executar essa função em JOB (processo isolado do servidor, sem interface), não é possível especificar um Path absoluto de disco. Caso isso seja realizado, o retorno da função será .F. e a função FError retornará -1 (Syntax Error).
  • O parâmetro opcional lChangeCase foi introduzido a partir do build 7.00.131227A pois em sistemas LINUX/UNIX, existe a diferenciação entre maiúsculo e minúsculo em nomes de arquivos ou pastas. Quando este parâmetro for informado, terá prioridade sobre comportamento de Case Sensitive definido pelas chaves de ini CASESENSITIVE ou SERVERTYPE. Porem, quando não especificado o parâmetro, o valor padrão (.T.) fica condicionado ao que está configurado nessas chaves.
  • Em ambiente Windows, os nomes de arquivos e pastas não possuem diferenciação entre maiúsculo e minúsculo, logo, a função conseguirá tratar a pasta apontada por cPath independente do valor definido no parâmetro lChangeCase.

Exemplos

user function teste()
  // 1º Exemplo:
  // No Application Server a partir do rootpath
  conout( ExistDir( "\apo" ) ) // Resultado: .T.
  
  // 2º Exemplo
  // No SmartClient, passando o FullPath
  conout( ExistDir( "c:\apo" ) ) // Resultado: .F.
return

Abrangência

Todas as versões

Veja também

  • Sem rótulos