Leox 2 Denunciar post Postado Junho 24, 2011 Olá mais uma vez pessoal do iMasters... Para finalizar uma função de Backup e Restauração do meu sistema de TCC da facul, estou com uma certa dificuldade aqui... De início, consegui desenvolver um algoritmo de Backup dos dados e arquivos utilizados pelo sistema, que ao final compacta através do WinRar (Linha de comando - WinExec) o diretório de DADOS dentro de outro diretório chamado "BACKUP". Linha de comando que "invoca" o WinRar (BACKUP): // ->> //-- COMPACTAÇÃO DOS ARQUIVOS PARA O RAR --// WinExec("C:\\Program Files\\WinRAR\\WinRAR.exe a -epl -k -r -m5 -agDD-MM-YY_HH-MM -padmin*123 .\\BACKUP\\backup_.rar .\\DADOS\\",SW_SHOW); //Apresentação de mensagem final. ShowMessage("Backup realizado com sucesso em "+Date()+" às "+Time()); Até aqui, beleza!!! A questão surge no seguinte... o arquivo *.rar com tais dados e arquivos contém outros subdiretórios de "ARQUIVOS"... porém quando tento fazer o inverso (RESTAURAÇÃO) através do código abaixo, consigo extrair todos os arquivos para a pasta desejada, porém sem tais subdiretórios... é possível extrair tais arquivos com seus respectivos diretórios recipiente, porém não estou conseguindo há um bom tempo. Linha de comando que "invoca" o WinRar (RECUPERAÇÃO): //Apagar psata de dados antigo. WinExec("cmd /c rmdir /s /q .\\DADOS\\",SW_HIDE); // ->> //------------------------DESCOMPACTAÇÃO DOS ARQUIVOS DO RAR ---------------------------------- //Capturando o nome do arquivo de backup. String filebackup = FileOpenDialogRestauracao -> FileName; //Variável que irá receber o caminho completo. String Rar; //Definindo o caminho completo Rar = "C:\\Program Files\\WinRAR\\WinRAR.exe e -padmin*123 "+filebackup+" .\\DADOS\\"; //Passando o valor da String fullpath para o Char filetobackup. char* Rartobackup = Rar.c_str(); //Executar comando Rar definido acima. WinExec(Rartobackup,SW_SHOW); Alguém aí tem alguma idéia de como proceder?! Compartilhar este post Link para o post Compartilhar em outros sites
Leox 2 Denunciar post Postado Junho 25, 2011 Resolvido por mim mesmo... após exaustivas 72 horas de busca no Sr. Google. O "X" da questão é o "x"... ^_^ No caso... Apenas basta trocar na linha: //Definindo o caminho completo Rar = "C:\\Program Files\\WinRAR\\WinRAR.exe e -padmin*123 "+filebackup+" .\\DADOS\\"; Por: //Definindo o caminho completo Rar = "C:\\Program Files\\WinRAR\\WinRAR.exe x -padmin*123 "+filebackup+" .\\DADOS\\"; No mais, saudações a todos. Compartilhar este post Link para o post Compartilhar em outros sites
Renato Utsch 24 Denunciar post Postado Junho 26, 2011 Obrigado por compartilhar ;D Compartilhar este post Link para o post Compartilhar em outros sites