Boa Tarde!
Finalmente encontrei a causa do problema e consequentemente defini a melhor solução para o meu caso.
A fato é o seguinte quando é criado um diretório em um pendrive utilizando o VNC1L você usa o comando "mkd" para isso, por exemplo:
- Código: Selecionar todos
mkd pasta01\n
Utilizando o comando acima você cria no pendrive um diretório chamado "pasta01" mas a data de criação atribuída a este diretório é uma data padrão do firmware do VNC1L, como eu estava informando uma data especifica para indicar quando a pasta foi criada o comando ficava da seguinte maneira:
- Código: Selecionar todos
mkd pasta01 0xFFFFFFFF\n
O problema que relatei no inicio do post ocorre porque o programa que eu estava realizando a melhoria fazia a seguinte sequencia:
- Código: Selecionar todos
mkd pasta01\n
cd pasta01\n
opw arquivo.txt\n
wrf 5\n
12345\r\n
clf arquivo.txt\n
Como podemos observar independente do diretório já existir ou não, ele sempre executa o comando mkd para criar o diretório, da forma com que os comandos estão não existe um problema, mas quando o mkd é executado informando a data de criação do diretório e o diretório já existir, o VNC1L bagunçava algo no pendrive que ele nao executava corretamente mais nenhum comando até que o mesmo fosse formatado.
Então alterei o programa para funcionar da seguinte maneira:
- Código: Selecionar todos
cd pasta01\n
if(falhou) {
mkd pasta01 0xFFFFFFFF\n
cd pasta01\n
}
opw arquivo.txt\n
wrf 5\n
12345\r\n
clf arquivo.txt\n
Desta forma ele testa se o diretório já existe antes de tentar criar o mesmo, assim o problema não ocorreu mais.
Desculpem a demora em responder mas estava ajustando outros detalhes antes de voltar neste problema, mas enfim encontrei a questão.