:script set versao=v1.0 - Beta 18 set irpara=pagina_principal :Verificacao set ver_config=0 set ver_lista=0 set ver_pasta=0 if not exist Configuracoes.ini set ver_config=1 if not exist Lista.ini set ver_lista=1 if not exist Backups set ver_pasta=1 if "%ver_lista%"=="1" goto restaurarconfig if "%ver_config%"=="1" goto restaurarconfig2 if "%ver_pasta%"=="1" goto restaurarconfig3 :Configuracoes for /f "tokens=1,2 delims==" %%a in (Configuracoes.ini) do ( if %%a==cor set cor=%%b if %%a==hkcr set hkcr=%%b if %%a==hkcu set hkcu=%%b if %%a==hklm set hklm=%%b if %%a==hku set hku=%%b if %%a==hkcc set hkcc=%%b ) :Configuracoes_Temp set cor_temp=%cor% set hkcr_temp=%hkcr% set hkcu_temp=%hkcu% set hklm_temp=%hklm% set hku_temp=%hku% set hkcc_temp=%hkcc% :Lista for /f "tokens=1,2 delims==" %%a in (Lista.ini) do ( if %%a==Slot1 set Slot1=%%b if %%a==Slot2 set Slot2=%%b if %%a==Slot3 set Slot3=%%b if %%a==Slot4 set Slot4=%%b if %%a==Slot5 set Slot5=%%b if %%a==Slot6 set Slot6=%%b if %%a==Slot7 set Slot7=%%b if %%a==Slot8 set Slot8=%%b if %%a==Slot9 set Slot9=%%b ) :Lista_Temp set Slot1_temp=%Slot1% set Slot2_temp=%Slot2% set Slot3_temp=%Slot3% set Slot4_temp=%Slot4% set Slot5_temp=%Slot5% set Slot6_temp=%Slot6% set Slot7_temp=%Slot7% set Slot8_temp=%Slot8% set Slot9_temp=%Slot9% :janela color %cor% echo off title Batch Backup %versao% mode 43,18 :limparmenus set menu_principal=null set menu_criar=null set menu_restaurar=null set menu_deletar=null set menu_configurar=null goto %irpara% :pagina_principal cls echo ------------------------ echo [ (1) Criar Backup ] echo [ (2) Restaurar Backup ] echo [ (3) Deletar Backup ] echo [ (4) Configuracoes ] echo [ (5) Sair ] echo ------------------------ :menu_principal if "%erro%"=="2" echo Nenhuma opcao selecionada.&set erro=0 echo. set /p menu_principal="Menu #: " if "%menu_principal%"=="1" goto pagina_criar if "%menu_principal%"=="2" goto pagina_restaurar if "%menu_principal%"=="3" goto pagina_deletar if "%menu_principal%"=="4" goto pagina_configuracoes if "%menu_principal%"=="5" exit set erro=2 set irpara=pagina_principal goto limparmenus :pagina_configuracoes cls echo -------------------- echo [ (1) Alterar cor ] echo [ (2) hklm: %hklm% ] echo [ (3) hkcr: %hkcr% ] echo [ (4) hkcu: %hkcu% ] echo [ (5) hku: %hku% ] echo [ (6) hkcc: %hkcc% ] echo [ (7) Voltar ] echo ------------------- :menu_configurar echo. set /p menu_configurar="Configurar #: " if "%menu_configurar%"=="1" echo.&set /p cor_temp="Cor: "&set irpara2=pagina_configuracoes&set irpara=pagina_configuracoes&goto salvar_configuracoes if "%menu_configurar%"=="7" set irpara=pagina_principal&set erro=0&goto limparmenus :pagina_criar cls echo ----------------------- echo [ (1) Slot 1: %Slot1% ] echo [ (2) Slot 2: %Slot2% ] echo [ (3) Slot 3: %Slot3% ] echo [ (4) Slot 4: %Slot4% ] echo [ (5) Slot 5: %Slot5% ] echo [ (6) Slot 6: %Slot6% ] echo [ (7) Slot 7: %Slot7% ] echo [ (8) Slot 8: %Slot8% ] echo [ (9) Slot 9: %Slot9% ] echo [ (10) Voltar ] echo ----------------------- :menu_criar if "%erro%"=="1" echo Slot Ocupado. if "%erro%"=="2" echo Nenhum slot selecionado.&set erro=0 set /p menu_criar="Slot #: " if "%menu_criar%"=="1" set slot=%Slot1%&set n=1&goto pagina_criar2 if "%menu_criar%"=="2" set slot=%Slot2%&set n=2&goto pagina_criar2 if "%menu_criar%"=="3" set slot=%Slot3%&set n=3&goto pagina_criar2 if "%menu_criar%"=="4" set slot=%Slot4%&set n=4&goto pagina_criar2 if "%menu_criar%"=="5" set slot=%Slot5%&set n=5&goto pagina_criar2 if "%menu_criar%"=="6" set slot=%Slot6%&set n=6&goto pagina_criar2 if "%menu_criar%"=="7" set slot=%Slot7%&set n=7&goto pagina_criar2 if "%menu_criar%"=="8" set slot=%Slot8%&set n=8&goto pagina_criar2 if "%menu_criar%"=="9" set slot=%Slot9%&set n=9&goto pagina_criar2 if "%menu_criar%"=="10" set irpara=pagina_principal&set erro=0&goto limparmenus set erro=2 set irpara=pagina_criar goto limparmenus :pagina_criar2 if "%slot%"=="Vazio" set irpara=pagina_criar3&goto limparmenus set erro=1 set irpara=pagina_criar goto limparmenus :pagina_criar3 cd Backups if not exist Slot%n% mkdir Slot%n% cd Slot%n% set Slot%n%_temp=%time% - %date% echo ------------------------ echo [ Criando backup... ] echo [ Etapa 1/5 ] reg export hkcr hkcr.reg>nul echo [ Etapa 2/5 ] reg export hkcu hkcu.reg>nul echo [ Etapa 3/5 ] reg export hklm hklm.reg>nul echo [ Etapa 4/5 ] reg export hku hku.reg>nul echo [ Etapa 5/5 ] reg export hkcc hkcc.reg>nul echo [ Backup Criado ] echo ------------------------ cd.. cd.. set irpara2=pagina_criar goto salvar_lista :pagina_restaurar cls echo ---------------------- echo [ (1) Slot 1: %Slot1% ] echo [ (2) Slot 2: %Slot2% ] echo [ (3) Slot 3: %Slot3% ] echo [ (4) Slot 4: %Slot4% ] echo [ (5) Slot 5: %Slot5% ] echo [ (6) Slot 6: %Slot6% ] echo [ (7) Slot 7: %Slot7% ] echo [ (8) Slot 8: %Slot8% ] echo [ (9) Slot 9: %Slot9% ] echo [ (10) Voltar ] echo ---------------------- :menu_restaurar if "%erro%"=="5" echo Slot selecionado esta vazio. if "%erro%"=="4" echo Nenhum slot selecionado. if "%erro%"=="3" echo Erro ao selecionar o slot.&set erro=0 set /p menu_restaurar="Slot #: " if "%menu_restaurar%"=="1" set slot=%Slot1%&set n=1&goto pagina_restaurar2 if "%menu_restaurar%"=="2" set slot=%Slot2%&set n=2&goto pagina_restaurar2 if "%menu_restaurar%"=="3" set slot=%Slot3%&set n=3&goto pagina_restaurar2 if "%menu_restaurar%"=="4" set slot=%Slot4%&set n=4&goto pagina_restaurar2 if "%menu_restaurar%"=="5" set slot=%Slot5%&set n=5&goto pagina_restaurar2 if "%menu_restaurar%"=="6" set slot=%Slot6%&set n=6&goto pagina_restaurar2 if "%menu_restaurar%"=="7" set slot=%Slot7%&set n=7&goto pagina_restaurar2 if "%menu_restaurar%"=="8" set slot=%Slot8%&set n=8&goto pagina_restaurar2 if "%menu_restaurar%"=="9" set slot=%Slot9%&set n=9&goto pagina_restaurar2 if "%menu_restaurar%"=="10" set irpara=pagina_principal&set erro=0&goto limparmenus set erro=4&set irpara=pagina_restaurar&goto limparmenus :pagina_restaurar2 cd Backups if "%slot%"=="Vazio" set erro=5&set irpara=pagina_restaurar&goto limparmenus if not exist Slot%n% set erro=3&set irpara=pagina_restaurar&goto limparmenus cd Slot%n% cls echo ------------------------ echo [ Restaurando backup...] echo [ Etapa 1/5 ] reg import hkcr.reg>nul echo [ Etapa 2/5 ] reg import hkcu.reg>nul echo [ Etapa 3/5 ] reg import hklm.reg>nul echo [ Etapa 4/5 ] reg import hku.reg>nul echo [ Etapa 5/5 ] reg import hkcc.reg>nul echo [ Backup Restaurado ] echo ------------------------ cd.. cd.. pause>nul goto script :pagina_deletar cls echo ---------------------- echo [ (1) Slot 1: %Slot1% ] echo [ (2) Slot 2: %Slot2% ] echo [ (3) Slot 3: %Slot3% ] echo [ (4) Slot 4: %Slot4% ] echo [ (5) Slot 5: %Slot5% ] echo [ (6) Slot 6: %Slot6% ] echo [ (7) Slot 7: %Slot7% ] echo [ (8) Slot 8: %Slot8% ] echo [ (9) Slot 9: %Slot9% ] echo [ (10) Voltar ] echo ---------------------- :menu_deletar if "%erro%"=="2" echo Nenhum slot selecionado. if "%erro%"=="5" echo Slot selecionado esta vazio.&set erro=0 set /p menu_deletar="Slot #: " if "%menu_deletar%"=="1" set slot=%Slot1%&set n=1&goto pagina_deletar2 if "%menu_deletar%"=="2" set slot=%Slot2%&set n=2&goto pagina_deletar2 if "%menu_deletar%"=="3" set slot=%Slot3%&set n=3&goto pagina_deletar2 if "%menu_deletar%"=="4" set slot=%Slot4%&set n=4&goto pagina_deletar2 if "%menu_deletar%"=="5" set slot=%Slot5%&set n=5&goto pagina_deletar2 if "%menu_deletar%"=="6" set slot=%Slot6%&set n=6&goto pagina_deletar2 if "%menu_deletar%"=="7" set slot=%Slot7%&set n=7&goto pagina_deletar2 if "%menu_deletar%"=="8" set slot=%Slot8%&set n=8&goto pagina_deletar2 if "%menu_deletar%"=="9" set slot=%Slot9%&set n=9&goto pagina_deletar2 if "%menu_deletar%"=="10" set irpara=pagina_principal&set erro=0&goto limparmenus set erro=2 set irpara=pagina_deletar goto limparmenus :pagina_deletar2 set irpara=pagina_deletar3 goto limparmenus :pagina_deletar3 if "%slot%"=="Vazio" set erro=5&set irpara=pagina_deletar&goto limparmenus set irpara2=pagina_deletar set Slot%n%_temp=Vazio cd Backups del /q Slot%n% cd.. goto salvar_lista :salvar_lista echo Salvando o arquivo Lista.ini.. if "%irpara%"=="salvar_lista" echo Lista salva e carregada com sucesso.&pause&goto %irpara2% echo Slot1=%Slot1_temp%>Lista.ini echo Slot2=%Slot2_temp%>>Lista.ini echo Slot3=%Slot3_temp%>>Lista.ini echo Slot4=%Slot4_temp%>>Lista.ini echo Slot5=%Slot5_temp%>>Lista.ini echo Slot6=%Slot6_temp%>>Lista.ini echo Slot7=%Slot7_temp%>>Lista.ini echo Slot8=%Slot8_temp%>>Lista.ini echo Slot9=%Slot9_temp%>>Lista.ini set irpara=salvar_lista goto Configuracoes :salvar_configuracoes echo Salvando o arquivo Configuracoes.ini.. if "%irpara%"=="salvar_configuracoes" echo Configuracoes salva e carregada com sucesso.&pause&goto %irpara2% echo cor=%cor_temp%>Configuracoes.ini echo hkcr=%hkcr_temp%>>Configuracoes.ini echo hkcu=%hkcu_temp%>>Configuracoes.ini echo hklm=%hklm_temp%>>Configuracoes.ini echo hku=%hku_temp%>>Configuracoes.ini echo hkcc=%hkcc_temp%>>Configuracoes.ini set irpara=salvar_configuracoes goto Configuracoes :restaurarconfig echo Slot1=Vazio>Lista.ini echo Slot2=Vazio>>Lista.ini echo Slot3=Vazio>>Lista.ini echo Slot4=Vazio>>Lista.ini echo Slot5=Vazio>>Lista.ini echo Slot6=Vazio>>Lista.ini echo Slot7=Vazio>>Lista.ini echo Slot8=Vazio>>Lista.ini echo Slot9=Vazio>>Lista.ini :restaurarconfig2 if "%ver_config%"=="0" goto restaurarconfig3 echo cor=D>Configuracoes.ini echo hkcr=Sim>>Configuracoes.ini echo hkcu=Sim>>Configuracoes.ini echo hklm=Sim>>Configuracoes.ini echo hku=Sim>>Configuracoes.ini echo hkcc=Sim>>Configuracoes.ini :restaurarconfig3 if "%ver_pasta%"=="0" goto restaurarconfig4 mkdir Backups set n=1 :restaurarconfig3_2 cd Backups if not exist Slot%n% mkdir Slot%n% cd.. if "%n%"=="9" goto restaurarconfig4 set /a n+=1 goto restaurarconfig3_2 :restaurarconfig4 ( if "%ver_config%"=="1" echo Msgbox "O Arquivo de configurações foi restaurado para o padrão." , 64 , "Batch Backup" )>bb.vbs ( if "%ver_lista%"=="1" echo Msgbox "A Lista de backups foi restaurada para a padrão." , 64 , "Batch Backup" )>>bb.vbs ( if "%ver_pasta%"=="1" echo Msgbox "As pastas foram restauradas para as padroes." , 64 , "Batch Backup" )>>bb.vbs start/wait bb.vbs del /q bb.vbs goto Verificacao ::Batch Backup ChangeLog v1.0 - Beta 18 (25/04/2010) : Ajeitado o echo de algumas paginas. v1.0 - Beta 17 (24/04/2010) : Removido 2 start/wait bb.vbs, adicionado as 3 msgs em um unico arquivo e abrindo ele uma unica vezz. v1.0 - Beta 16 (24/04/2010) : Ajeitado o design da pagina configuracoes : Adicionado a opção 7 no menu Configuracoes. v1.0 - Beta 15 (24/04/2010) : Adicionado a pagina de salvamento do arquivo Configuracoes.ini : Adicionado para que limpe o menu_configurar no limparmenus : Pagina configuracoes em andamento, ainda não concluida. v1.0 - Beta 14 (23/04/2010) : Adicionado um set erro=0 nos menus das paginas ao voltar para a pagina principal. v1.0 - Beta 13 (22/04/2010) : Adicionado para que sempre que for voltar para a pagina principal, passar pelo limpar menus v1.0 - Beta 12 (22/04/2010) : Adicionado um sisteminha de restauração padrão para os arquivos Configuracoes.inii, Lista.ini e as pastas de backup v1.0 - Beta 11 (22/04/2010) : Resolvido o bug nas paginas que fazia com que nao pudesse criar/deletar + de 1 backup. : Pagina thuthuca renomeada para pagina_criar3 : Adicionado a pagina_deletar2 como parte do fix do bug v1.0 - Beta 10 (13/03/2010) : Adicionado a opção 10 em todos os menus para poder voltar para a pagina principal v1.0 - Beta 9 (11/03/2010) : Arrumado o bug com a pagina deletar : Removido a pagina irpara2 v1.0 - Beta 8 (10/03/2010) : Adicionado a verificação do slot na parte de restauração v1.0 - Beta 7 (14/11/2009) : Adicionado outros erros : Setado para ir no link limparmenus em algumas escolhas : Numero de slots reduzido para 9 : Pagina deletar finalizado : Adicionado a variavel irpara2 v1.0 - Beta 6 (13/11/2009) : Removido a variavel pasta : Em andamento a leitura da ini Lista : Terminado o design da pagina_criar : Adicionado um sisteminha de erros : Adicionado erro 1 - Slot ocupado. : Adicionado erro 2 - Nenhum slot selecionado. : Retirado a variavel SlotNome e SlotInfo : Retirado a variavel SlotData : Varias outras mudanças... v1.0 - Beta 5 (13/11/2009) : Link Checkbackup removido : Retirado o if no Criar_Backup : Em andamento a leitura da ini Configuracoes : Design alterado. : Link "criar_backup" renomeado para "pagina_criar" : Link "restaurar_backup" renomeado para "pagina_restaurar" : Link "deletar_backup" renomeado para "pagina_deletar" : Adicionado ">nul" nas operacoes de exportacoes : Adicionado o color para ser lido no Configuracoes.ini v1.0 - Beta 4 (13/11/2009) : Adicionado o set que faltava para setar a variavel versao : Removido o aviso para executar como administrador : Adicionado um mode para setar o tamanho da janela : A Pagina principal foi totalmente refeito, deixando apenas as opções a mostra. : Link "menu" renomeado para "pagina_principal" : Adicionado o link para a pagina configuracoes na pagina principal : Menu de escolha "menu_escolha" renomeado para "menu_principal" v1.0 - Beta 3 (13/11/2009) : Alterado o metodo de importação e exportação do backup. : Removido temporariamente (talvez) a variavel com a pasta de backup, os cd e etc... v1.0 - Beta 2 (13/11/2009) : Removido o cls logo no inicio do primeiro menu de escolha. : Adicionado o ponto que faltava no echo para quebrar uma linha no link menu v1.0 - Beta 1 (13/11/2009) : Finalizado as linhas mais importantes.