Índice:

Introdução ao VB Script: um guia para iniciantes: 11 etapas
Introdução ao VB Script: um guia para iniciantes: 11 etapas

Vídeo: Introdução ao VB Script: um guia para iniciantes: 11 etapas

Vídeo: Introdução ao VB Script: um guia para iniciantes: 11 etapas
Vídeo: VBScript - Vb Script-Vbscript (Programming Language)-VBScript Editor-Invoke VBSscript-Using Vbscript 2024, Novembro
Anonim
Introdução ao VB Script: um guia para iniciantes
Introdução ao VB Script: um guia para iniciantes

*** ((((ALERTA: Embora haja muitas etapas. Na verdade, isso é bem fácil. Eu apenas explico tudo em detalhes para os iniciantes. Se você quiser apenas o código, pule para a última etapa e você encontrará o completo código lá.)))) *** Eu jogo muito Xbox ao vivo e sempre tenho que desabilitar a internet no meu computador porque ela consome largura de banda. Principalmente porque estou baixando ou enviando coisas o tempo todo. O problema não é desligá-lo, mas sim ligá-lo que esqueci, fazendo com que perdesse todo aquele tempo de upload / download. Então decidi criar um programa para fazer isso por mim. Eu ia escrever em Vb.net, mas recentemente tive que limpar e pavimentar meu sistema operacional no meu computador por causa de uma forte tempestade que fritou meu disco rígido, e ainda não reinstalei o VB.net, então imaginei que isso seria dê-me um motivo para brincar com o vbscript. Também fiz uma imagem pintada para exibir em segundo plano, então sabia que estava em execução.

Etapa 1: descubra o que você deseja fazer

Descubra o que você deseja fazer
Descubra o que você deseja fazer

A primeira coisa que sempre faço é fazer um plano. O que eu quero que o programa faça? A) Quero poder abrir o script e ele desligará automaticamente a conexão. B) Eu quero que ele exiba uma tela gigante em segundo plano para que não haja dúvidas de que a internet está desligada, desta forma eu não me esqueço de ligá-la novamente. C) Eu quero que me dê a opção de ligá-la volte a ligar e aguarde uma resposta. D) Quero ter certeza de que liguei novamente para não esquecer. E) Então, quando eu realmente disser sim para ligá-lo novamente, o script o ligará novamente e então fecha o fundo. F) Saia de tudo.

Etapa 2: Coisas que eu uso, mas não são realmente necessárias

Coisas que eu uso, mas não são realmente necessárias
Coisas que eu uso, mas não são realmente necessárias

Tudo que você realmente precisa é de um editor de texto como o bloco de notas. Todo o resto é opcional. Eu uso o Notepad ++ quando faço script em VB, porque ele o trata como o vb.net faz com as cores e conhece a linguagem. Ajuda a evitar erros. Ele também numera as linhas para que você possa diagnosticar qual é o problema ao obter um código de erro. Pode ser obtido aqui notepad ++

Etapa 3: comece a programar

Comece a Programar
Comece a Programar

Bem, a primeira coisa que você quer fazer é criar um arquivo de texto e salvá-lo com o nome que você quiser com a extensão de arquivo.vbsExemplo: NetworkShutOffScriptThatShutsOffTheInternetSoIcanPlayGamesOnMyXboxAndNotGetLag.vbsExemplo 2: games.vbsTudo o que importa é que você nomeie com a extensão de arquivo.vbsEu geralmente faço isso na área de trabalho porque eu o abro cerca de um zilhão de vezes enquanto estou trabalhando nele. Agora, basta clicar com o botão direito do mouse no arquivo e clicar em editar ou editar com o notepad ++

Etapa 4: Etapa 1: Abrindo uma janela de prompt de comando

Etapa 1: Abrindo uma janela de prompt de comando
Etapa 1: Abrindo uma janela de prompt de comando

Então eu decidi fazer a maior parte do trabalho eu apenas usaria programas já armazenados no computador para fazer o que eu quero. Menos codificação e nenhum download… Woohoo. Easiest é o prompt de comando. Portanto, queremos abrir uma janela do prompt de comando para fazer isso, queremos construir um objeto para fazer, então digitamos: set shellobj = CreateObject ("WScript. Shell") O que ele faz: Defina uma instância de shellobj como igual para criar o objeto w script shell. Dessa forma, tudo o que temos a fazer é digitar shellobj em vez de CreateObject ("WScript. Shell") toda vez que precisarmos de um novo comando. Agora que criamos um objeto, instruímos o objeto a abrir uma janela de prompt de comando. Para fazer isso, digitamos: shellobj.run "cmd" O que faz: Isso seria o equivalente a digitar CMD na caixa de execução do menu iniciar. Se não tivéssemos definido a variável shellobject, teríamos que digitar: CreateObject ("WScript. Shell"). Run "cmd" … veja como é mais fácil agora. Menos espaço para erros. Clique no arquivo … depois em Salvar … depois vá para a área de trabalho e clique duas vezes no arquivo vbs que você criou, ele deve ser executado. Se tudo der certo, você deverá obter um prompt de comando do Windows para aparecer … yaaaaaa !!! se não verificar sua codificação, até agora você deve ter: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" Você pode adicionar comentários em seu script para lembrar o que fez mais tarde, colocando uma vírgula na frente da linha, como isto: 'isto é para abrir um prompt de comandoQuando estou codificando muitas vezes, farei isso, então me lembro do que fiz mais tarde, quando estava procurando por ele. O script simplesmente ignora essa linha e segue em frente. Se você os vir, você pode fazer o mesmo.

Etapa 5: Etapa 2: configurar temporizadores

Etapa 2: configurar temporizadores
Etapa 2: configurar temporizadores

Ok, agora que temos uma nova janela elegante, precisamos preenchê-la com comandos para que possamos fazer o que queremos. O problema é que alguns computadores demoram mais que outros para abrir as janelas, então queremos que o script espere um pouco pouco para começar. se iniciar muito cedo, o computador preencherá o espaço em branco antes de você abrir a janela e você receberá um comando parcial ou nenhum. Portanto, precisamos configurar um cronômetro. Para fazer isso, digitamos: wscript.sleep 200O que faz: diz ao script para aguardar um período de X antes de executar o próximo comando. 1000 é igual a um segundo, então o meu está esperando um quinto de segundo. Você pode descobrir que seu computador precisa esperar mais ou menos tempo. Se você observar o computador e ele não digitar os comandos corretamente, altere o número para um número maior, como 2000 seria 2 segundos e provavelmente bastante tempo. Salve o arquivo agora, seu código neste ponto deve ser: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200

Etapa 6: Etapa 3: Faça uma imagem

Etapa 3: faça uma foto
Etapa 3: faça uma foto

Acabei de abrir o paint e digitei "Internet Disconected" nele e fiz 800x600 e salvei como id.bmp e salvei no meu diretório raiz, no meu caso k: / mas o seu provavelmente será c:

Etapa 7: Etapa 4: Envio de comandos, abertura da imagem

Etapa 4: Enviando comandos, abrindo a imagem
Etapa 4: Enviando comandos, abrindo a imagem

Ok, agora que temos uma janela de comando esperando por comandos, tudo o que temos a fazer é digitar os comandos na janela usando o comando sendkeys. Quando usamos o comando sendkeys, é como digitar, mas ele digitará o que quisermos. Podemos enviar qualquer coisa que possamos digitar, incluindo as teclas de entrada necessárias para executar programas. Agora que sabemos como enviar teclas, vamos abrir nossa imagem que acabamos de fazer e, em seguida, inserir outro posfácio de temporizador para que a imagem tenha tempo de carregar. Para fazer isso, digitamos: shellobj.sendkeys "k: / id.bmp {enter}" wscript.sleep 200O que faz: É o mesmo que digitar k: / id.bmp na caixa de execução. Deve abrir sua imagem no visualizador de imagem padrão para um bmp … no meu caso é o visualizador de imagem do Windows e fax, mas a maioria das pessoas instala programas pós-venda que fazem isso também, então quem sabe o que o seu abrirá em. Agora salve seu arquivo e execute-o. Você deve obter um prompt de comando e uma imagem para aparecer. até agora tudo bem !!! seu código até agora deve ser: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "k: / id.bmp {enter}" wscript. dormir 200

Etapa 8: Etapa 5: Envio de comandos, desligue a Internet

Etapa 5: Envio de comandos, desligue a Internet
Etapa 5: Envio de comandos, desligue a Internet

Neste ponto, se você ainda não fez isso, baixe o arquivo pdf no final, então se você estragar você tem um Instructable baixado sobre como consertá-lo. Agora é aqui que a diversão começa. Ok, então usaremos ipconfig para liberar nosso endereço IP. Sem um endereço IP, não podemos obter nenhum tráfego de Internet porque o roteador não sabe para onde enviá-lo ao computador. Para fazer isso, digitamos: shellobj.sendkeys "ipconfig / release {enter}" O que faz: Instrui o programa IPCONFIG a liberar o endereço IP. o {enter} está informando ao computador que você pressionou a tecla Enter. seria como digitar ipconfig / release na janela de execução e pressionar Enter. Normalmente, depois de fazer isso, se você executar ipconfig, ele dirá que seu endereço IP é 0.0.0.0. Isso é o que queremos. Sem um endereço IP, o roteador não sabe que estamos aqui e nenhum programa pode "discar", por assim dizer. Agora que terminamos com sucesso o desligamento do IP, queremos fechar a janela. Agora poderíamos escrever outra linha que diz: shellobj.sendkeys "exit {enter}" Mas seria mais fácil apenas editar a linha acima e anexá-la ao final, então você tem: shellobj.sendkeys "ipconfig / release {enter} exit {enter} "Agora salve, mas não execute, pois você desligará sua conexão com a Internet. Se você executá-lo e sua internet desligar, apenas mude a chave de ipconfig / release para ipconfig / renew e execute-o novamente e deve ligá-lo novamente. E se tudo mais falhar, reinicie e você deve estar bem. Seu código até agora deve ser: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "k: / id.bmp { enter} "wscript.sleep 200shellobj.sendkeys" ipconfig / release {enter} exit {enter}"

Etapa 9: Etapa 6: Criando uma caixa de mensagem e aguardando uma resposta

Etapa 6: Criando uma caixa de mensagem e aguardando uma resposta
Etapa 6: Criando uma caixa de mensagem e aguardando uma resposta

Ok, agora que desligamos a internet e fechamos a janela do prompt de comando com sucesso, queremos uma caixa de mensagem perguntando se queremos ligar a internet novamente. Mas aqui é onde fica complicado, queremos esperar para um sim, mas se clicarmos em não, não queremos que ele desapareça, então usaremos uma instrução while para fazer isso. Primeiro, precisamos dimensionar uma variável para a caixa de mensagens para que possamos atribuir a ela variáveis numéricas. Eu sei que parece confuso, mas realmente não é. já fizemos isso uma vez com a linha: set shellobj = CreateObject ("WScript. Shell") este é ainda mais fácil de configurar, basta digitar: Dim MyVarO que faz: Agora dimensionamos uma variável chamada MyVarQuando você recebe um "sim / não "uma caixa de mensagem aparece na tela e você clica nos botões e atribui um valor a cada botão, neste caso" sim "é 1 e" não "é 2. Queremos que a variável comece com um" não ". atribuímos a ele o número 2 por padrão, desta forma ele pausa até que um botão seja clicado. Para fazer isso, digitamos: myvar = 2O que ele faz: agora MyVar é igual a 2, dessa forma na próxima linha ele irá parar e aguardar a entrada. Agora, queremos apenas que ele fique parado e espere até estarmos prontos para ligar a internet novamente. Para fazer isso, digitamos: while myvar = 2O que faz: ao fazer isso, informamos ao script que, desde que o valor de myvar = 2 então apenas continue repetindo a caixa de mensagem até obtermos qualquer valor diferente de 2, que neste caso só poderia ser 1 Em seguida, queremos fazer uma caixa de mensagem aparecer com botões sim / não. isso digitamos: MyVar = MsgBox ("Ativar conexão com a Internet", 65, "Ativar conexão com a Internet") O que faz: Agora a variável MyVar será atribuída a qualquer valor atribuído ao botão que é clicado na caixa de mensagem. a primeira parte das aspas é o que a caixa de mensagem realmente dirá. O 65 designa-o como uma caixa de mensagem Sim / Não. e a última parte entre aspas é o rótulo da caixa de mensagem. para verificar qual valor ele atribui quando você clica em sim ou não, você pode adicionar uma linha que diz msgbox (myVar) e imprimirá qualquer valor atribuído a myvar em uma caixa de mensagem. agora que temos uma caixa de mensagem, precisamos fechar a instrução while. Tudo o que está entre a abertura e o fechamento da instrução while será executado toda vez que você clicar em não, porque se você clicar em não, ainda terá o valor 2 e retornará à primeira parte. Para encerrar a instrução while, digite: wendWhat it faz: Uma vez que você finalizou uma instrução while, ela funcionará como um loop até que o argumento não seja mais encontrado. Portanto, se você continuar a pressionar não, ele fará um loop, mas assim que você clicar em sim, ele se libertará do loop e continuará com o script. Salve o arquivo, mas espere para executá-lo até a próxima etapa. Seu código até agora deve ser: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "k: / id.bmp { enter} "wscript.sleep 200shellobj.sendkeys" ipconfig / release {enter} exit {enter} "Dim MyVarmyvar = 2while myvar = 2MyVar = MsgBox (" Ativar conexão com a Internet ", 65," Ativar conexão com a Internet ") wend

Etapa 10: Etapa 7: Ativar novamente a Internet

Etapa 7: Como reativar a Internet
Etapa 7: Como reativar a Internet
Etapa 7: Como reativar a Internet
Etapa 7: Como reativar a Internet
Etapa 7: Como reativar a Internet
Etapa 7: Como reativar a Internet

Agora que alguém finalmente clicou em sim e passou no comando while, precisamos acessar a internet. Eu geralmente exibo uma confirmação para que o usuário final saiba o que está acontecendo, mas é puramente opcional. Para exibir um tipo de confirmação: msgbox ("Vamos agora ligar novamente a conexão com a Internet !!!") O que faz: envia uma caixa de mensagem que diz Agora vamos ligar novamente a conexão com a Internet !!! e dá a você um botão ok para clicar. Agora tudo o que temos que fazer é ligar a internet novamente e fechar tudo. para ligar a internet novamente, basta abrir um prompt de comando, definir o cronômetro e usar o ipcionfig novamente. para fazer isso digite: shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "ipconfig / renew {enter}" O que faz: reverte o comando desligar anterior e renova seu endereço IP. Depois de renovar seu endereço IP, você pode obter conexões de Internet novamente. Agora, tudo o que temos a fazer é limpar as janelas abertas. Novamente, poderíamos usar um comando sendkeys, mas vou apenas acrescentar a última linha para manter as limpezas também. Neste caso, vou usar o programa taskkill para matar o programa que exibe a imagem. Neste caso, é a imagem do Windows e o visualizador de fax e aparece como rundll32.exe na guia de processos do gerenciador de tarefas, então é isso que precisamos matar. Se sua imagem abrir usando outro programa, como irfanview ou acdsee, encontre o nome pelo qual ela atende na guia de processos e substitua o rundll32.exe pelo nome que você encontrou. O comando seria: taskkill / F / IM rundll32.exe O que é faz: a tarefa de matar é o nome do programa a opção / F diz a ele para forçar uma eliminação e a opção / IM diz o nome da imagem. Então, agora acrescentamos isso à última linha, adicionamos um enter para executar o comando e, em seguida, um comando exit e outro enter e se parece com isto: shellobj.sendkeys "ipconfig / renew {enter} taskkill / F / IM rundll32.exe {enter} exit {enter}" Salve seu arquivo.

Etapa 11: Produto acabado

Produto final
Produto final

Se tudo deu certo, seu produto final deve ter a seguinte aparência: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "k: / id.bmp {enter}" wscript.sleep 200shellobj.sendkeys "ipconfig / release {enter} exit {enter}" Dim MyVarmyvar = 2while myvar = 2MyVar = MsgBox ("Ativar conexão com a Internet", 65, "Ativar conexão com a Internet") wendmsgbox ("Agora vamos ativar a Internet Conexão novamente ligada !!! ") shellobj.run" cmd "wscript.sleep 200shellobj.sendkeys" ipconfig / renew {enter} taskkill / F / IM rundll32.exe {enter} exit {enter} "_end of script_Now que a programação é feito, você pode executar o programa. O que deve acontecer: 1.) Você deve fazer com que a janela CMD apareça por um curto período de tempo e feche 2.) Sua internet não deve mais funcionar. mas você não verá isso3.) Sua imagem deve abrir.4.) Você deve receber um pop-up perguntando se deseja ligar a Internet novamente.5.) Não importa quantas vezes você clique em não, a caixa de mensagem deve apitar mas abra novamente perguntando se deseja ligar a internet novamente.6.) Depois de clicar em sim, a caixa de mensagem deve desaparecer e uma janela CMD deve ser exibida novamente7.) Assim que o endereço IP for renovado, a janela CMD e a imagem deve fechar. Aqui está. Um VBscript muito fácil para ligar e desligar sua internet. Espero que você goste. Na verdade, fiz outro script quase idêntico a este que desliga os adaptadores de rede usando um programa chamado DevCon, que é como um gerenciador de dispositivos de linha de comando. Funciona muito bem para. O script é idêntico a este exceto onde neste tem comandos para ipconfig que tem comandos para DevCon.

Recomendado: