Sommario:

Introduzione allo script VB: una guida per principianti: 11 passaggi
Introduzione allo script VB: una guida per principianti: 11 passaggi

Video: Introduzione allo script VB: una guida per principianti: 11 passaggi

Video: Introduzione allo script VB: una guida per principianti: 11 passaggi
Video: VBScript - Vb Script-Vbscript (Programming Language)-VBScript Editor-Invoke VBSscript-Using Vbscript 2024, Dicembre
Anonim
Introduzione allo script VB: una guida per principianti
Introduzione allo script VB: una guida per principianti

***((((AVVISO: anche se ci sono molti passaggi. questo è in realtà abbastanza semplice. Spiego tutto in dettaglio per i principianti. Se vuoi solo il codice salta all'ultimo passaggio e troverai il completo codice lì.))))***Gioco molto su Xbox live e devo sempre disabilitare Internet sul mio computer perché occupa larghezza di banda. Principalmente perché sto scaricando o caricando cose tutto il tempo. Il problema non è spegnerlo, ma è riaccenderlo che dimentico, arrivando al punto in cui perdo tutto quel tempo di upload/download. Così ho deciso di creare un programma che lo facesse per me. Stavo per scriverlo in Vb.net ma solo di recente ho dovuto bombardare e spianare il mio sistema operativo sul mio computer a causa di una brutta tempesta che friggeva il mio disco rigido e non ho ancora reinstallato VB.net, quindi ho pensato che sarebbe dammi un motivo per giocare con vbscript. Ho anche creato un'immagine in vernice da visualizzare sullo sfondo, quindi sapevo che era in esecuzione.

Passaggio 1: scopri cosa vuoi fare

Scopri cosa vuoi fare
Scopri cosa vuoi fare

La prima cosa che faccio sempre è fare un piano. Cosa voglio che faccia il programma? A) Voglio essere in grado di aprire lo script e si interromperà automaticamente la connessione. B) Voglio che mostri un display gigante sullo sfondo, quindi non c'è errore che Internet sia spento, in questo modo non mi dimentico di riaccenderlo. C) Voglio che mi dia la possibilità di accenderlo riaccendi e poi attendi una risposta. D) Voglio che sia sicuro di riaccenderlo in modo da non dimenticarlo. E) Quindi, una volta che dico di sì per riaccenderlo, lo script lo riaccende e poi chiude lo sfondo. F) Esci da tutto.

Passaggio 2: cose che uso ma non sono realmente necessarie

Cose che uso ma non sono realmente necessarie
Cose che uso ma non sono realmente necessarie

Tutto ciò di cui hai veramente bisogno è un editor di testo come il blocco note. Tutto il resto è facoltativo. Uso Notepad ++ quando eseguo lo script VB, quindi perché lo tratta come fa vb.net con i colori e conosce la lingua. Aiuta a evitare errori. Numera anche le righe in modo da poter diagnosticare qual è il problema quando si ottiene un codice di errore. Può essere ottenuto da qui blocco note ++

Passaggio 3: avviare la programmazione

Inizia la programmazione
Inizia la programmazione

Bene, la prima cosa che vuoi fare è creare un file di testo e salvarlo come vuoi che venga chiamato con l'estensione del file.vbsExample: NetworkShutOffScriptThatShutsOffTheInternetSoIcanPlayGamesOnMyXboxAndNotGetLag.vbsExample 2: games.vbsTutto ciò che conta è che lo chiami con l'estensione del file.vbsDi solito lo faccio sul desktop perché lo apro circa un milione di volte mentre ci sto lavorando. Ora fai clic con il pulsante destro del mouse sul file e premi modifica o modifica con notepad ++

Passaggio 4: Passaggio 1: apertura di una finestra del prompt dei comandi

Passaggio 1: apertura di una finestra del prompt dei comandi
Passaggio 1: apertura di una finestra del prompt dei comandi

Quindi ho deciso di fare la maggior parte del lavoro usando solo i programmi già memorizzati sul computer per fare ciò che voglio. Meno codifica e nessun download … Woohoo. Il più semplice è il prompt dei comandi. Quindi vogliamo aprire una finestra del prompt dei comandi per farlo vogliamo creare un oggetto per farlo digitiamo: set shellobj = CreateObject ("WScript. Shell") Cosa fa: Imposta un'istanza di shellobj in modo che sia uguale per creare l'oggetto w script shell. In questo modo tutto ciò che dobbiamo fare è digitare shellobj invece di CreateObject ("WScript. Shell") ogni volta che abbiamo bisogno di un nuovo comando. Ora che abbiamo creato un oggetto, istruiamo l'oggetto ad aprire una finestra del prompt dei comandi. Per farlo digitiamo: shellobj.run "cmd"Che cosa fa: sarebbe l'equivalente di digitare CMD nella casella Esegui nel menu di avvio. Se non avessimo impostato la variabile shellobject avremmo dovuto digitare: CreateObject("WScript. Shell").run "cmd"… guarda quanto è più facile ora. Meno spazio per gli errori. Fai clic su file… quindi su Salva… quindi vai sul desktop e fai doppio clic sul file vbs che hai creato dovrebbe essere eseguito Se tutto va bene dovresti ottenere un prompt dei comandi di Windows da mostrare…..yaaaaaa!!!se non controlla la tua codifica, finora dovresti avere: set shellobj = CreateObject("WScript. Shell")shellobj.run "cmd"Puoi aggiungere commenti nel tuo script in modo da ricordare cosa hai fatto in seguito mettendo una virgola davanti alla riga come questo: 'questo è per aprire un prompt dei comandi Quando sto programmando molte volte, lo farò in modo da ricordare cosa ho fatto in seguito quando lo sto cercando. Lo script ignora semplicemente quella riga e va avanti. Se li vedi puoi fare lo stesso.

Passaggio 5: Passaggio 2: impostazione dei timer

Passaggio 2: impostazione dei timer
Passaggio 2: impostazione dei timer

Ok ora che abbiamo una nuova finestra elegante, dobbiamo popolarla con i comandi in modo da poter fare ciò che vogliamo. Il problema è che alcuni computer impiegano più tempo di altri per aprire le finestre, quindi vogliamo che lo script aspetti un po' po' per iniziare. se si avvia troppo presto, il computer riempirà lo spazio vuoto prima che la finestra si apra e otterrai un comando parziale o nessuno. Quindi dobbiamo impostare un timer. Per farlo scriviamo:wscript.sleep 200Cosa fa: dice allo script di aspettare un tempo X prima di eseguire il comando successivo. 1000 è uguale a un secondo, quindi il mio è in attesa di un quinto di secondo. Potresti scoprire che il tuo computer deve attendere più o meno tempo. Se guardi il computer e non digita correttamente i comandi, cambia il numero in un numero più alto come 2000 sarebbe 2 secondi e probabilmente un sacco di tempo. Salva il file ora il tuo codice a questo punto dovrebbe essere:set shellobj = CreateObject("WScript. Shell")shellobj.run "cmd"wscript.sleep 200

Passaggio 6: Passaggio 3: crea una foto

Passaggio 3: crea una foto
Passaggio 3: crea una foto

Ho appena aperto paint e ho digitato "Internet Disconnesso" e l'ho reso 800x600 e l'ho salvato come id.bmp e l'ho salvato nella mia directory principale, nel mio caso k:\ ma il tuo sarà probabilmente c:

Passaggio 7: Passaggio 4: invio di comandi, apertura dell'immagine

Passaggio 4: invio di comandi, apertura dell'immagine
Passaggio 4: invio di comandi, apertura dell'immagine

Ok, ora che abbiamo una finestra di comando in attesa di comandi, tutto ciò che dobbiamo fare è digitare i comandi nella finestra utilizzando il comando sendkeys. Quando usiamo il comando sendkeys è come digitare, ma digiterà tutto ciò che vogliamo che digiti. Tutto ciò che possiamo digitare possiamo inviare, inclusi i tasti di invio necessari per eseguire i programmi. Ora che sappiamo come inviare i tasti, apriamo la nostra immagine che abbiamo appena creato, quindi inseriamo un'altra postfazione del timer in modo che dia all'immagine il tempo di caricarsi. Per farlo digitiamo:shellobj.sendkeys "k:\id.bmp{enter}"wscript.sleep 200Che cosa fa: equivale a digitare k:\id.bmp nella casella Esegui. Dovrebbe aprire la tua immagine nel visualizzatore di immagini predefinito per un bmp … nel mio caso è il visualizzatore di immagini e fax di Windows, ma la maggior parte delle persone installa programmi after market che fanno anche questo, quindi chissà in cosa si aprirà il tuo. Ora salva il tuo file e eseguilo. Dovresti ottenere un prompt dei comandi e un'immagine da visualizzare. finora tutto bene!!! il tuo codice finora dovrebbe essere:set shellobj = CreateObject("WScript. Shell")shellobj.run "cmd"wscript.sleep 200shellobj.sendkeys "k:\id.bmp{enter}"wscript. dormire 200

Passaggio 8: Passaggio 5: invio di comandi, spegnimento di Internet

Passaggio 5: invio di comandi, spegnimento di Internet
Passaggio 5: invio di comandi, spegnimento di Internet

A questo punto, se non l'hai ancora fatto, scarica il file pdf alla fine, così se sbagli hai scaricato un Instructable su come risolverlo. Ora è qui che inizia il divertimento. Ok, quindi useremo ipconfig per rilasciare il nostro indirizzo IP. Senza un indirizzo IP non possiamo ricevere traffico Internet perché il router non sa dove inviarlo al computer. Per farlo digitiamo:shellobj.sendkeys "ipconfig /release{enter}"Cosa fa: Questo istruisce il programma IPCONFIG a rilasciare l'indirizzo IP. {enter} sta dicendo al computer che hai premuto il tasto Invio. sarebbe come digitare ipconfig /release nella finestra di esecuzione e premere invio. Di solito dopo averlo fatto, se esegui ipconfig ti dirà che il tuo indirizzo IP è 0.0.0.0 Questo è quello che vogliamo. Senza un indirizzo IP il router non sa che siamo qui e nessun programma può "comporre il numero" per così dire. Ora che abbiamo finito con successo di spegnere l'IP, vogliamo chiudere la finestra. Ora potremmo scrivere un'altra riga che dice:shellobj.sendkeys "exit{enter}"Ma sarebbe più semplice modificare la riga sopra e aggiungerla alla fine in modo da avere:shellobj.sendkeys "ipconfig /release{enter}exit {enter}"Ora salvalo ma non eseguirlo perché interromperai la connessione a Internet. Se lo esegui e Internet si spegne, cambia semplicemente l'interruttore da ipconfig /release a ipconfig /renew e lo esegui di nuovo e dovrebbe riaccenderlo. E se tutto il resto fallisce, riavvia e dovresti essere a posto. Il tuo codice finora dovrebbe essere: set shellobj = CreateObject("WScript. Shell")shellobj.run "cmd"wscript.sleep 200shellobj.sendkeys "k:\id.bmp{ invio}"wscript.sleep 200shellobj.sendkeys "ipconfig /release{enter}exit{enter}"

Passaggio 9: Passaggio 6: creazione di una finestra di messaggio e attesa di risposta

Passaggio 6: creazione di una finestra di messaggio e attesa di risposta
Passaggio 6: creazione di una finestra di messaggio e attesa di risposta

Ok, ora che abbiamo spento con successo Internet e chiuso la finestra del prompt dei comandi, vogliamo che venga visualizzata una finestra di messaggio che chiede se vogliamo riattivare Internet. Ma qui è dove diventa complicato, vogliamo che aspetti per un sì, ma se facciamo clic su no non vogliamo che scompaia, quindi utilizzeremo un'istruzione while per farlo. Per prima cosa dobbiamo dimensionare una variabile per il messgebox in modo da poterle assegnare variabili numeriche. So che sembra confuso ma in realtà non lo è. l'abbiamo già fatto una volta con la riga:set shellobj = CreateObject("WScript. Shell")questo è ancora più semplice da configurare, basta digitare:Dim MyVarCosa fa: ora abbiamo dimensionato una variabile chiamata MyVarQuando ottieni un" sì /no" viene visualizzata una finestra di messaggio sullo schermo e fai clic sui pulsanti assegna un valore a ciascun pulsante, in questo caso "sì" è 1 e "no" è 2. Vogliamo che la variabile inizi con un "no" Quindi gli assegniamo il numero 2 di default, in questo modo si ferma fino a quando non viene cliccato un pulsante Per farlo digitiamo:myvar=2Cosa fa: ora MyVar è uguale a 2, in questo modo nella riga successiva si fermerà e attenderà l'input. Ora vogliamo solo che si sieda lì e attenda fino a quando non siamo pronti per riaccendere Internet. =2 quindi continua a eseguire il ciclo della finestra di messaggio fino a quando non otteniamo un valore diverso da 2, che in questo caso potrebbe essere solo 1 Quindi in realtà vogliamo far apparire una finestra di messaggio con i pulsanti sì/no. Per fare questo digitiamo: MyVar = MsgBox ("Attiva connessione Internet", 65, "Attiva connessione Internet") Cosa fa: Ora alla variabile MyVar verrà assegnato qualsiasi valore sia assegnato al pulsante che viene cliccato sulla finestra del messaggio. la prima parte tra virgolette è ciò che effettivamente dirà il messaggio. Il 65 lo designa come casella di messaggio Sì/No. e l'ultima parte tra virgolette è l'etichetta della messagebox. per controllare quale valore assegna quando fai clic su sì o no potresti aggiungere una riga che dice msgbox (myVar) e stamperà qualsiasi valore assegnato a myvar in a message box. ora che abbiamo una message box dobbiamo chiudere l'istruzione while. Tutto ciò che si trova tra l'apertura e la chiusura dell'istruzione while verrà eseguito ogni volta che fai clic su no, perché se fai clic su no è ancora un valore di 2 e torna alla prima parte.per terminare l'istruzione while digita:wendWhat it fa: una volta che hai messo fine a un'istruzione while, agirà come un ciclo finché l'argomento non viene più soddisfatto. Quindi, se continui a premere no, verrà eseguito un ciclo, ma una volta premuto sì, si libererà dal ciclo e continuerà con lo script. Salva il file ma attendi di eseguirlo fino al passaggio successivo. Il tuo codice finora dovrebbe essere: 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 ("Attiva connessione Internet", 65, "Attiva connessione Internet")wend

Passaggio 10: Passaggio 7: riattivazione di Internet

Passaggio 7: riattivazione di Internet
Passaggio 7: riattivazione di Internet
Passaggio 7: riattivazione di Internet
Passaggio 7: riattivazione di Internet
Passaggio 7: riattivazione di Internet
Passaggio 7: riattivazione di Internet

Ora che qualcuno ha finalmente fatto clic su Sì e ha superato l'istruzione while, dobbiamo cercare su Internet. Di solito faccio apparire una conferma in modo che l'utente finale sappia cosa sta succedendo, ma è puramente facoltativo. Per far apparire un tipo di conferma: msgbox ("Ora riattiveremo la connessione a Internet!!!") Cosa fa: invia una finestra di messaggio che dice Ora riattiveremo la connessione a Internet!!! e ti dà un pulsante ok per fare clic. Ora tutto ciò che dobbiamo fare è riaccendere Internet e chiudere tutto. type:shellobj.run "cmd"wscript.sleep 200shellobj.sendkeys "ipconfig /renew{enter}"Cosa fa: inverte il comando di spegnimento precedente e rinnova il tuo indirizzo IP. Dopo aver rinnovato il tuo indirizzo IP, ora puoi ottenere nuovamente le connessioni Internet. Ora tutto ciò che dobbiamo fare è ripulire le finestre aperte. Ancora una volta potremmo usare un comando sendkeys ma aggiungerò solo l'ultima riga per contenere anche le pulizie. In questo caso userò il programma taskkill per terminare il programma che mostra l'immagine. In questo caso è il visualizzatore di immagini e fax di Windows e viene visualizzato come rundll32.exe nella scheda dei processi del task manager, quindi è quello che dobbiamo uccidere. Se la tua immagine si apre usando un altro programma, come irfanview o acdsee, trova il nome che segue nella scheda dei processi e sostituisci rundll32.exe con il nome che trovi. Il comando sarebbe: taskkill /F /IM rundll32.exeChe cos'è fa: il taskkill è il nome del programma l'opzione /F gli dice di forzare un kill e l'opzione /IM gli dice il nome dell'immagineQuindi ora lo aggiungiamo all'ultima riga, aggiungiamo un invio per eseguire il comando e poi un comando di uscita e un altro invio e si presenta così: shellobj.sendkeys "ipconfig /renew{enter}taskkill /F /IM rundll32.exe{enter}exit{enter}" Salva il tuo file.

Passaggio 11: prodotto finito

Prodotto finito
Prodotto finito

Se tutto è andato bene, il tuo prodotto finito dovrebbe essere simile a questo: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 ("Attiva connessione Internet", 65, "Attiva connessione Internet")wendmsgbox ("Ora giriamo Internet Connessione di nuovo attiva!!!")shellobj.run "cmd"wscript.sleep 200shellobj.sendkeys "ipconfig /renew{enter}taskkill /F /IM rundll32.exe{enter}exit{enter}" _end of script_Ora che la programmazione è fatto puoi eseguire il programma. Cosa dovrebbe succedere: 1.) Dovresti visualizzare la finestra CMD per un breve periodo di tempo, quindi chiuderla 2.) Internet non dovrebbe più funzionare. ma non lo vedrai3.) La tua immagine dovrebbe aprirsi.4.) Dovresti vedere un pop-up che ti chiede se vuoi riattivare Internet.5.) Non importa quante volte fai clic su no, la finestra del messaggio dovrebbe suonare a ma si apre di nuovo chiedendo se si desidera riattivare Internet.6.) Dopo aver fatto clic su Sì, la finestra di messaggio dovrebbe scomparire e una finestra CMD dovrebbe essere visualizzata di nuovo7.) Una volta rinnovato l'indirizzo IP, la finestra CMD e l'immagine dovrebbe chiudere. Ecco qua. Un VBscript molto semplice per accendere e spegnere Internet. Spero ti piaccia. In realtà ho creato un altro script quasi identico a questo che spegne le schede di rete utilizzando un programma chiamato DevCon, che è come un gestore di dispositivi da riga di comando. Funziona davvero bene per. Lo script è identico a questo tranne dove in questo ha i comandi per ipconfig che uno ha i comandi per DevCon.

Consigliato: