COPIA DE ARQUIVOS
Ola Pessoal tudo bem
gente existe alguma forma segura de copiar arquivos?
Explico:
eu criei um APP para autoBackup do meu sistema, ele cria um arquivo ZIP com vários arquivos, e depois copia esse Backup.Zip para um caminho especifico na rede
esta funcionando, mais de vez em quando, o arquivo Backup.Zip copiado fica corrompido, quando vai abrir o arquivo backup.zip aparece a mensagem de fim de arquivo inesperado, e olhando os arquivos dentro do Backup.zip falta algum itens, que estão no arquivo original
eu uso a seguinte rotina para criar e copiar o Backup.zip
por isso pergunto tem alguma maneira mais segura de efetuar a copia do arquivo?
gente existe alguma forma segura de copiar arquivos?
Explico:
eu criei um APP para autoBackup do meu sistema, ele cria um arquivo ZIP com vários arquivos, e depois copia esse Backup.Zip para um caminho especifico na rede
esta funcionando, mais de vez em quando, o arquivo Backup.Zip copiado fica corrompido, quando vai abrir o arquivo backup.zip aparece a mensagem de fim de arquivo inesperado, e olhando os arquivos dentro do Backup.zip falta algum itens, que estão no arquivo original
eu uso a seguinte rotina para criar e copiar o Backup.zip
Copia(SC_xml)
CopiaDados(SC_dados)
Copia_cancelado(SC_Cancelados)
processo(Application.StartupPath + [Ô]\7z[Ô], [Ô]a c:\DDAA.zip C:\MabTemp\* -aoa[Ô], True) [ô]cria o arquivo ZIP
System.IO.Directory.Delete([Ô]c:\MabTemp[Ô], True)
System.IO.File.Copy([Ô]c:\DDAA.zip[Ô], Caminho_backup, True)[ô]copia o arquivo zip
por isso pergunto tem alguma maneira mais segura de efetuar a copia do arquivo?
use o programa [txt-color=#0000f0]Cobian Backup[/txt-color] é seguro e faz Backup Automático mesmo que o banco de Dados esteja aberto
Se o Banco for SQL server use o [txt-color=#0000f0]BackupSQLAndFTP[/txt-color], a versão paga faz cópia na Nuvem (DropBox, Google Drive, OneDrive, etc) tb de forma Automática e é excelente.
Se o Banco for SQL server use o [txt-color=#0000f0]BackupSQLAndFTP[/txt-color], a versão paga faz cópia na Nuvem (DropBox, Google Drive, OneDrive, etc) tb de forma Automática e é excelente.
Então o Cobian trabalha por tempo terminada (você configura a hora que deseja) para funcionar o que eu quero (integrar site e ERP) eu preciso que a copia de arquivo trabalhe por evento
ou seja quando o usuário executa uma certa operação o sistema cria a copia dos arquivos em ZIP e posta no site
tudo automaticamente
já esta funcionando o fato e que de vez em quanto o arquivo postado fica corrompido
ou seja quando o usuário executa uma certa operação o sistema cria a copia dos arquivos em ZIP e posta no site
tudo automaticamente
já esta funcionando o fato e que de vez em quanto o arquivo postado fica corrompido
existe alguma forma de verificar o arquivo após a copia?
Cara,
Eu copio um arquivo de banco de dados Access usando isto aqui:
LocalDoBD é um caminho configurado pelo usuário na hora de instalar o programa e [Ô]FF30Y250GB023.mdb[Ô] é o arquivo de banco de dados.
Nunca me deu problema e nunca ficou corrompido. Levando em consideração que eu nunca copiei arquivos ZIP ou RAR para poder comparar com o seu problema.
Se estiver com problemas, verifique se o caminho tem permissão para aceitar cópias ou se o seu código é interrompido em algum momento por causa de erros ou se você está passando o nome do arquivo completo, inclusive com a extenção [Ô].zip[Ô].
Eu copio um arquivo de banco de dados Access usando isto aqui:
My.Computer.FileSystem.CopyFile(LocalDoBD & [Ô]\FF30Y250GB023.mdb[Ô], Application.StartupPath & [Ô]\Backup\FF30Y250GB023.mdb[Ô], True)
LocalDoBD é um caminho configurado pelo usuário na hora de instalar o programa e [Ô]FF30Y250GB023.mdb[Ô] é o arquivo de banco de dados.
Nunca me deu problema e nunca ficou corrompido. Levando em consideração que eu nunca copiei arquivos ZIP ou RAR para poder comparar com o seu problema.
Se estiver com problemas, verifique se o caminho tem permissão para aceitar cópias ou se o seu código é interrompido em algum momento por causa de erros ou se você está passando o nome do arquivo completo, inclusive com a extenção [Ô].zip[Ô].
Citação::
Cara,
Eu copio um arquivo de banco de dados Access usando isto aqui:My.Computer.FileSystem.CopyFile(LocalDoBD & [Ô]FF30Y250GB023.mdb[Ô], Application.StartupPath & [Ô]BackupFF30Y250GB023.mdb[Ô], True)
LocalDoBD é um caminho configurado pelo usuário na hora de instalar o programa e [Ô]FF30Y250GB023.mdb[Ô] é o arquivo de banco de dados.
Nunca me deu problema e nunca ficou corrompido. Levando em consideração que eu nunca copiei arquivos ZIP ou RAR para poder comparar com o seu problema.
Se estiver com problemas, verifique se o caminho tem permissão para aceitar cópias ou se o seu código é interrompido em algum momento por causa de erros ou se você está passando o nome do arquivo completo, inclusive com a extenção [Ô].zip[Ô].
Pegudo eu uso a mesma que você
o CopyFile, esta funcionando certinho o pipino e que aleatoriamente o arquivo corrompe eu creio que seja algo da internet pois o sistema salva esse arquivo em uma pasta do site por ftp, estou tentando agora criar alguma rotina que verifique o arquivo, assim se ele estiver com erro eu faço a copia novamente
precisa averiguar se ele não ta gerando o backup corrompido por o arquivo estar em uso, algo assim....
se fosse sem compactação vc poderia obter um MD5 do arquivo original, copiava e conferia o MD5 da copia.....
se fosse sem compactação vc poderia obter um MD5 do arquivo original, copiava e conferia o MD5 da copia.....
Citação::
precisa averiguar se ele não ta gerando o backup corrompido por o arquivo estar em uso, algo assim....
se fosse sem compactação vc poderia obter um MD5 do arquivo original, copiava e conferia o MD5 da copia.....
Não os arquivos que são copiados nunca ficam em uso, inclusive eu tenho uma rotina que verifica isso antes de executar as copias
Citação:Não os arquivos que são copiados nunca ficam em uso, inclusive eu tenho uma rotina que verifica isso antes de executar as copias
Nesse caso, o que me parece é que o problema esta no envio do arquivo, vc utiliza programas de terceiros ou seu para enviar ?
Citação::
Não os arquivos que são copiados nunca ficam em uso, inclusive eu tenho uma rotina que verifica isso antes de executar as copias
Nesse caso, o que me parece é que o problema esta no envio do arquivo, vc utiliza programas de terceiros ou seu para enviar ?
Amigo como pode verificar no Tópico eu utilizo o Copyfile para copiar arquivo, sou seja não utilizo arq. ou soft de terceiros
como teste so pra verificar, modifique a rotina pra gerar algo como um MD5 do arquivo original, e conferir o MD5 do arquivo no destino, se forem diferentes é provável o problema na copia, ai vc deveria repetir a copia até q fossem iguais as verificações, creio eu ser o meio mais garantido de conferir se são idênticos os arquivos tanto na origem como no destino
da uma olhada num exemplo geração de cheksum
http://www.macoratti.net/vbn5_cks.htm
da uma olhada num exemplo geração de cheksum
http://www.macoratti.net/vbn5_cks.htm
Tópico encerrado , respostas não são mais permitidas