MELHOR FORMA PARA MONITOR UM PASTA

LUIS.FLAVIO 08/07/2010 15:43:18
#346872
Pessoal estou com um problema da seguinte forma,

Preciso monitor uma determinado pasta, onde precisarei monitorar para que quando o usuário colocar um arquivo automaticamente ele copia para outro determinado diretório, não posso dar a chance de alguém copiar o arquivo e abri-lo.

Minha solução é:

O usuário exporta de um outro sistema um arquivo contendo resultado de análises químicas, minha aplicação é ler esse arquivo CSV que é exportado e inserir os resultados na minha base de dados. O processo de ler, incluir no banco já está pronto, mas eu tenho que garantir de qualquer forma que ninguém altere o conteúdo desse arquivo tem que estar intacto, então minha solução é criar um rotina de monitoramento muito rápida que quando o usuário exportar automaticamente ele copia o arquivo para outro determinado diretório, tem que ser coisas de segundo pois ele pode exportar e abrir o arquivo e alterar o resultado. E também se o arquivo estiver aberto eu não conseguirei ler as informações.

Não sei se o timer seria a melhor forma, pois esse sistema ficará somente aberto não se fecha, somente quando o servidor tiver desligado, se o timer ficar em segundo não sei se pode consumir muita memória.

Pensem que nesse arquivo tem os resultados de DNA, inviolável e a única forma de se fazer isso é o pessoal exportando esse arquivo do equipamento e eu ler esse CSV.

Conto com a ajuda dos senhores.

MARCOSLING 08/07/2010 15:56:30
#346874
Você não pode gravar o arquivo no banco de dados e apagar o arquivo físico?
LUIS.FLAVIO 08/07/2010 16:01:10
#346875
Amigo a única forma de se obter os resultados é via importação, esse computador está ligado a um equipamento de análise se a saída dos resultados e só via CSV.

O usuário pede para exportar o resultado onde é gerado um CSV e ele salva no diretório que quero, eu teria eu apenas monitorar o momento do lançamento e copiar para outro diretório onde ele não tem permissão.

Lembrando que esse sistema ficará rodando em um servidor e o usuário não terá acesso a esse servidor.

MADMAX 08/07/2010 16:02:28
#346876
LUIS FLAVIO ate e possivel mais ficar lendo uma pasta o tempo todo vai rouber processamento da maquina o negocio mesmo seria como o amigo LVFIOROT citou , você teria de terntar integrar diretamente ao outo sistema ,
LUIS.FLAVIO 08/07/2010 16:08:09
#346877
Pessoal é impossível integrar a esse sistema, também contraria todos os padrões de análise.
MICROSCHEME 08/07/2010 17:23:02
#346896

Cara.

Tenta o seguinte

Um aplicativo só pra fazer essa transação, com um timer pra tarefa que precisa, então mesmo rodando 24 hs sem parar ( se preciso é claro ), não
deverá interferir no desempenho da tua aplicação principal.

Vai ficar um aplicativo extremamente pequeno rodando oculto e que ficará independente da dua aplicação original, teóricamente, não interferindo
no desempenho ao longo do expediente se tu montar dentro do próprio aplicativo vai ficar pesado o processamento dificultando o trabalho no dia a dia.

é só uma idéia, é claro.

Ah, abertura do banco compartilhado,

Blz . . .

. . .

LUIS.FLAVIO 08/07/2010 23:37:09
#346923
Sempre vai pra o mesmo lugar sem que o usuario saiba onde? Não, o usuário irá selecionar o diretório para salvar dentro do servidor.
Sempre vai pra o mesmo lugar sem que o usuario saiba onde? Não, o usuário irá selecionar o diretório a ser salvo (esse diretório já está definido)
Esse [Ô]sistema da maquina[Ô] fica instalado no servidor ou na maquina do usuário? Fica instalado em uma máquina e os dados ele exporta para o servidor direto.

Eu sei que se o cara salvar na máquina ele pode alterar a informação, mas não conseguimos acessar a base de dados do sistema/equipamento.
JAYJR 09/07/2010 19:32:25
#346975
Olá Luís.

Em VB6 desconheço processo nativo que possa realizar este processo... Já em VB.NET existe a classe FileSystemWatcher que faz exatamente o que você precisa... Ela fica monitorando um determinado diretório e verifica possíveis alterações, criações e etc... e executa determinado evento. Na net você conseguira encontrar diversos exemplos bem simples de serem aplicados em sua tarefa.

Porém é válido lembrar que você continua com os mesmos problemas, pois o usuário tem total liberdade de escolher para onde enviar o arquivo original.

Espero ter lhe ajudado.

Abs
Página 1 de 2 [12 registro(s)]
Tópico encerrado , respostas não são mais permitidas