Neste artigo, demonstrarei como criar um arquivo .bat que faça o download de um aplicativo e caso este não esteja instalado no computador, em seguida solicitar a instalação e, ao finalizar a instalação, executará este aplicativo.
Estarei aproveitando o script do artigo anterior, sendo assim, será feito apenas um breve comentário de alguns trechos de códigos que já foram explicados no artigo anterior.
Para não ficar muito extenso, será criado apenas um pequeno menu para demonstrar e explicar o script. No fim deste artigo estará o link feito de exemplo.
Criando o arquivo .BAT
Conforme a imagem abaixo, o script limpará a tela com o comando CLS. Na linha seguinte, o ponto de interseção :MENU será utilizado quando desejar que o aplicativo retorne a este ponto depois da execução de uma instrução.
Com o comando ECHO, será mostrado o nome do usuário logado e o nome do computador. Com este mesmo comando será criado um pequeno menu com apenas 3 opções, sendo as duas primeiras dos aplicativos como exemplo a serem executados.
Logo abaixo do menu, será definida uma variável com o comando SET, onde também serão definidas as condições com esta variável.
Conforme as condições acima, ao escolher o numero 1 para a variável, levará para o ponto :OPCAO1 (definida com os dois pontos “:” antecedendo o nome) do aplicativo.
Neste trecho de código da imagem abaixo, será criada uma condição com o comando IF/ELSE, onde quer dizer literalmente “se(if) existir o programa, inicie ele e quando fechá-lo, voltará para o ponto solicitado, ou então (else), faça o download, inicie a instalação e ao terminar de instalar, execute este programa”.
Fazendo o download do programa com BITSADMIN
Para fazer o download do programa será utilizado o comando BITSADMIN, que já está incluso no “Prompt de Comando (CMD)” desde o Windows 7.
As opções deste comando é “bitsdamin /transfer nomedotrabalho /priority URL local_de_armazenamento”, onde /transfer é a opção para transferir o arquivo. Em o nomedotrabalho, é o nome que será dado a este trabalho e que vai aparecer no topo do processo de download. Em URL, será o endereço completo na internet do arquivo a ser baixado e em local_de_armazenamento, será colocado o caminho onde armazenará o download, incluindo o nome com a extensão que reberá este arquivo. No local de armazenamento a instrução %USERNAME%, quer dizer que salvará na pasta “Downloads” do usuário logado.
Para a opção 2, o trecho de condição é similar ao da opção 1, mudando apenas o endereço (URL) do instalador do programa na internet.
Se repararmos, foi definido um nome mais simples para o instalador do aplicativo que será armazenado na pasta downloads.
Na opção 3 será para sair do arquivo .BAT e na opção 4 (considere :opcao4 ao invés de :op4), Se escolher um número igual a 4 ou superior, aparecerá a mensagem de opção inválida.
Como salvar o arquivo .BAT
Ao terminarmos de criar um arquivo .bat que faça o download de programas, iremos clicar no menu “Arquivo > Salvar Como…”.
Escolheremos o local onde vai salvar o arquivo, depois definimos o nome com a extensão .bat. Em tipo, alteramos para a opção “Todos os arquivos” e por fim clicaremos em “Salvar”.
Agora devemos executar o arquivo com permissões elevadas. Para isso clicaremos com o botão direito do mouse em cima do arquivo.bat e depois com o botão esquerdo do mouse, clicaremos em “Executar como administrador” e aceitar a execução do programa.
Ao iniciar o aplicativo, aparecerão as informações de usuário, computador, a data atual, o menu de opções e o local esperando a seleção da opção.
Neste exemplo, foi escolhida a opção 2 que é do utilitário “7zip”. Como não localizou este programa instalado, o código foi para a segunda condição que é para fazer o download do arquivo.
Lembrando que o endereço (URL) tem que ser exatamente do instalador.
Caso o link (endereço) do instalador, tenha caracteres como, por exemplo, sinal de igual (=), (?) entre outros, utilize um site de encurtador de URL.
Dependendo do endereço do aplicativo, pode ocasionar erro de download, pois, o servidor do local escolhido pode bloquear download por linha de comando.
Após a transferência (download) do arquivo estiver completa, ficará aguardando o usuário pressionar uma tecla, que é a função do comando PAUSE do script.
Ao pressionarmos qualquer tecla, abrirá a janela de instalação do utilitário que aqui nop caso é o compactador 7-Zip.
Ao finalizar de instalar, o aplicativo exemplo aguardará novamente o usuário pressionar uma tecla.
Ao pressionar qualquer tecla executará o programa recém instalado como é mostrada na imagem abaixo.
Agora que o 7-Zip está instalado, executarmos novamente o aplicativo .bat e escolhermos a opção referente ao “7-Zip”, abrirá direto o programa, pois já se encontra instalado.
Isto serve também para programa que não necessitam de instalação, como é o caso do “Anydesk”.
Logicamente que é um exemplo didático de como criar um arquivo .bat que faça o download de programa, mas você pode adapta-lo para suas necessidades. Use sua criatividade para automatizar tarefas!
Para quem quiser baixar este arquivo exemplo clique aqui.
3 Comentários
Excelente explicação, era o que eu precisava. Sou iniciante e dentro desse formato tive algumas dúvidas:
1. Como faço para inserir uma mensagem ao usuário junto com o download e acima dele
Ex: mensagem tal…
Tranferindo 5,10%…
2. É possível ocultar esse comando de download e deixar somente a porcentagem de transferência e uma mensagem própria para o usuário?
3. Em algumas máquinas, ocorre erro por não encontrar o %username%. O usuário possui espaço (admin 02) e perfil admin. Como solucionar?
Desde já, muito obrigado!
Eu fiz o exemplo usando meu programa, mas assim que eu coloco a opção 1, que foi a única que criei, ele fecha, outra coisa, funciona se eu colocar a url do endereço do programa localizado no meu pc em vez da internet, coloquei e não foi.
Opa Bruno!
Veja se você não excutou direto do explorer ao invés de executar a partir do prompt de comando.
Quanto a url, existe duas situações: você compartilhar o arquivo executável e utilizar \\127.0.0.1\nome_do_arquivo.exe ou \\localhost\nome_do_arquivo.exe.
Ou utilize “C:\local do arquivo\nome_do_arquivo.exe”
Utilize aspas (“) quando o endereço e/ou nome do arquivo tiver espaços.
Espero ter ajudado.