Página 1 de 1
Criação de Diretórios
Enviado: 08 Jul 2004 09:48
por Joel
:?:
Olá pessoal.
Alguém sabe como criar um subdiretório sem usar o comando RUN.
Hoje faço assim: ! MD "C:\REPORT\"
Gostaria de obter uma maneira que não fosse externa ao programa por problema de memória.
Um abraço a todos.
Enviado: 08 Jul 2004 10:05
por Toledo
Joel,
Você pode utilizar a função DIRMAKE() da biblioteca CATools (CT.LIB).
Exemplo:
Código: Selecionar todos
IF DIRCHANGE("\REPORT") == -3 //se não encontrou a pasta
DIRMAKE("\REPORT")
ENDIF
Veja também nesta biblioteca as funções DIRCHANGE(), DIRNAME() e DIRREMOVE().
Abraços,
Enviado: 08 Jul 2004 10:06
por tonyx
no programa
TESTE DE EXISTENCIA DO DIRETORIO PRIMEIRO
DIR_TST = ´C:\TESTE
ARQ_DAT:= DIR_TXT+´\ARQUIVO.DAT´
TST_DBF:= DIR_TST+´\*.DBF´
TST_DAT:= DIR_TST+´\*.DAT´
IF ! FILE(TST_DBF) .OR. ! FILE(TST_DAT)
RUN MD &DIRETORIO > NULL
TESTE2 = FCREATE(ARQ_DAT,0)
IF TESTE2 = 1
WAIT ´NAO CONSIQUI CRIAR DIRETORIO´
ELSE
FWRITE(TESTE2,´TESTE DE GRAVACAO DE ARQUIVO DAT´)
FCLOSE(TESTE2)
ENDIF
ENDIF
*------ A QUESTAO DA MEMORIA COPILAR COM EXOSPACE ----
Enviado: 08 Jul 2004 10:10
por Joel
Value Toledo. Vou testar.
Muito obrigado.
Enviado: 08 Jul 2004 10:12
por Joel
Olá Tonyx.
Valeu a ajuda. Mas justamente o que eu não quero é usar o comando RUN.
Aqui na Empresa nos usamos o ADS e essa ferramenta obriga o uso do BLINK.
Mas valeu a atenção.
Um abraço.
Enviado: 08 Jul 2004 10:18
por MARINI
Se usa o BLINKER dê uma estudada no
SWPRUNCMD("MD\ diretorio")
Enviado: 08 Jul 2004 10:35
por Joel
Olá Marini.
Que função é essa: SWPRUNCMD("MD\ diretorio")?
Onde a encontro?
Um abraço.
Enviado: 08 Jul 2004 11:07
por MARINI
É uma das funções especificas do BLINKER.
No manual tem diversas delas.
Ela funciona semelhante ao RUN mas não ocupa memória
pois o RUN carrega o COMMAND.COM para cada chamada.
Se precisar executar um outro programa, por exemplo, basta
escrever SWPRUNCMD("C:\DIR\NOME DO PROGRAMA").
No caso em questão basta criar a seguinte linha do seu fonte:
SWPRUNCMD("MD C:\REPORT")
Se o diretório já existir não faz nada, daí não ser
necessário acrescentar uma rotina para verificação.
Se o diretório não existir será criado um novo.
Faça o teste.
Sds
Marini
Enviado: 08 Jul 2004 11:35
por Joel
Olá marini.
Fiz do jeito que você indicou:
SWPRUNCMD("MD C:\REPORT")
Não dá erro na compilação, linkedição ou execução mas também não cria o diretório.
O que poderia estar dando errado?
Uso o clip52e, blinker e o ADS
Abraços.
Enviado: 08 Jul 2004 17:09
por Joel
Olá Toledo.
Eu esquci de comentar que eu uso o clipper 52e e as funções que você me passou me parece que são da 53. Você tem outra solução?
Abraços.
Enviado: 08 Jul 2004 23:41
por Toledo
Joel,
Estas funções são da biblioteca CA-Tools (CT.LIB) que pode ser usada pelo Clipper 5.2e, mas para isto, você tem que ter a CT.LIB ai na pasta LIB do seu Clipper e incluir ela na hora de linkar o seu programa.
Se você não tiver a CT.LIB, entre na seção UTILITÁRIOS do site Geração Clipper (
http://www.geracaoclipper.org) que você vai encontrar.
Abraços,
Enviado: 20 Jul 2004 11:21
por MARINI
Joel:
Desculpa pela demora na resposta pois estava viajando.
Fiz o teste com a linha que você citou e criou o diretório.
SWPRUNCMD("MD C:\REPORT")
Uso o Clipper 5.3 e Blinker 7.
Sds
Marini