Sadržaj:

Uvod u VB Script: vodič za početnike: 11 koraka
Uvod u VB Script: vodič za početnike: 11 koraka

Video: Uvod u VB Script: vodič za početnike: 11 koraka

Video: Uvod u VB Script: vodič za početnike: 11 koraka
Video: Полное руководство по Google Forms - универсальный инструмент для опросов и сбора данных онлайн! 2024, Juli
Anonim
Uvod u VB Script: Vodič za početnike
Uvod u VB Script: Vodič za početnike

*** (((Upozorenje: Iako postoji mnogo koraka. Ovo je zapravo prilično jednostavno. Za početnike samo objašnjavam sve detaljno. Ako samo želite da kôd skoči na posljednji korak i pronaći ćete cijeli Kod tamo.)))) *** Puno igram Xbox uživo i uvijek moram onemogućiti internet na računaru jer sputava propusnost. Uglavnom zato što stalno preuzimam ili postavljam stvari. Problem nije u tome što ga isključujem, već ga vraćam na ono što sam zaboravio, pa sam izgubio svo to vrijeme za učitavanje/preuzimanje. Odlučio sam stvoriti program koji će to učiniti umjesto mene. Htio sam to napisati na Vb.net, ali tek sam nedavno morao nukleariti i asfaltirati svoj operativni sistem na računaru zbog loše oluje koja je ispržila moj tvrdi disk, a još nisam ponovo instalirao VB.net pa sam zaključio da će to biti daj mi razlog da se igram s vbscript. Napravio sam i sliku u boji za prikaz u pozadini, tako da sam znao da radi.

Korak 1: Shvatite šta želite da uradite

Shvatite šta želite da radite
Shvatite šta želite da radite

Prvo što uvijek radim je napraviti plan. Šta želim da program radi? A) Želim biti u mogućnosti otvoriti skriptu i ona će automatski prekinuti vezu. B) Želim da prikazuje veliki ekran u pozadini, tako da nema greške što je internet isključen, na ovaj način ne zaboravljam da ga ponovo uključim. C) Želim da mi omogući izbor uključivanja ponovo uključite, a zatim pričekajte odgovor. D) Želim da se pobrinem da ga ponovo uključim da ne zaboravim. E) Onda kad zaista kažem da da ga ponovo uključim, skripta ga ponovo uključuje a zatim zatvara pozadinu. F) Izađite iz svega.

Korak 2: Stvari koje koristim, ali nisu potrebne

Stvari koje koristim, ali nisu potrebne
Stvari koje koristim, ali nisu potrebne

Sve što vam zaista treba je uređivač teksta poput bilježnice. Sve ostalo je opcionalno. Ja koristim Notepad ++ kada radim VB skriptu, jer se prema njoj ponaša kao što vb.net radi s bojama i zna jezik. Pomaže u izbjegavanju grešaka. On također numerira redove tako da možete dijagnosticirati koji je problem kada dobijete kôd greške. Odavde se može dobiti notepad ++

Korak 3: Pokrenite programiranje

Pokrenite programiranje
Pokrenite programiranje

Pa, prvo što želite učiniti je stvoriti tekstualnu datoteku i spremiti je u sve što želite da se imenuje s ekstenzijom datoteke.vbs Primjer: NetworkShutOffScriptThatShutsOffTheInternetSoIcanPlayGamesOnMyXboxAndNotGetLag.vbsPrimjer 2: games.vbsSamo je važno da datoteku imenujete..vbs Obično to radim na radnoj površini jer je otvaram oko milion puta dok radim na njoj. Sada samo kliknite desnim tasterom miša na datoteku i pritisnite uređivanje ili uređivanje pomoću notepad ++

Korak 4: Korak 1: Otvaranje prozora komandne linije

Korak 1: Otvaranje prozora komandne linije
Korak 1: Otvaranje prozora komandne linije

Stoga sam odlučio obaviti većinu posla, samo bih koristio programe koji su već pohranjeni na računaru da radim ono što želim. Manje kodiranja i bez preuzimanja … Woohoo. Najjednostavnije je naredbeni redak. Pa želimo otvoriti prozor naredbenog retka da bismo to učinili, želimo izgraditi objekt koji ćemo učiniti tako da upišemo: set shellobj = CreateObject ("WScript. Shell") Šta radi: Postavite instancu shellobj -a na jednaku za stvaranje objekta s ljuskom skripte. Na ovaj način sve što trebamo učiniti je upisivati shellobj umjesto CreateObject ("WScript. Shell") svaki put kad nam zatreba nova naredba. Sada kada smo stvorili objekt, dajemo mu nalog da otvori prozor naredbene linije. Da bismo to upisali: shellobj.run "cmd" Šta radi: Ovo bi bilo ekvivalentno upisivanju CMD -a u okvir za pokretanje na početnom meniju. Da nismo postavili varijablu shellobject, morali bismo upisati: CreateObject ("WScript. Shell"), pokrenuti "cmd" … vidjeti koliko je sada lakše. Manje prostora za greške. Kliknite na datoteku … pa Sačuvaj … a zatim idite na radnu površinu i dvaput kliknite na vbsfile koju ste napravili da bi se trebala pokrenuti Ako sve ide kako treba, trebali biste dobiti Windows naredbeni redak za prikaz …..aaaaaa !!! ako nije označeno vaše kodiranje, do sada ste trebali imati: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" Možete dodati komentare u svoju skriptu kako biste zapamtili šta ste kasnije učinili stavljajući zarez ispred reda kao ovo: 'ovo je za otvaranje naredbenog retka. Kad kodiram mnogo puta, učinit ću ovo pa se sjećam onoga što sam kasnije radio kada sam to tražio. Skripta jednostavno zanemaruje tu liniju i nastavlja dalje. Ako ih vidite, možete učiniti isto.

Korak 5: Korak 2: Postavljanje tajmera

Korak 2: Postavljanje tajmera
Korak 2: Postavljanje tajmera

U redu, sada kada imamo novi prozor, moramo ga popuniti naredbama kako bismo ga natjerali da radi ono što želimo. Problem je u tome što nekim računarima treba duže od drugih da otvore prozore pa želimo da skripta malo pričeka malo za početak. ako se pokrene prerano, računar će popuniti prazno mjesto prije nego što otvorite prozor i dobit ćete djelomičnu naredbu ili je uopće nećete dobiti. Dakle, moramo postaviti mjerač vremena. Da bismo to učinili, upisujemo: wscript.sleep 200Šta radi: On govori skripti da čeka X vrijeme prije izvršavanja sljedeće naredbe. 1000 je jedna sekunda pa moja čeka petinu sekunde. Možda ćete otkriti da vaš računar mora čekati duže ili manje. Ako gledate računar i on ne unosi komande ispravno, promijenite broj na veći broj, na primjer 2000 bi bilo 2 sekunde i vjerovatno dosta vremena. Spremite datoteku sada vaš kôd u ovom trenutku trebao bi biti: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200

Korak 6: Korak 3: Napravite sliku

Korak 3: Napravite sliku
Korak 3: Napravite sliku

Upravo sam otvorio paint i otkucao "Internet Disconected" u njega i napravio ga 800x600 i sačuvao kao id.bmp i sačuvao u svom osnovnom direktorijumu, u mom slučaju k: / ali vaš će verovatno biti c:

Korak 7: Korak 4: Slanje naredbi, otvaranje slike

Korak 4: Slanje naredbi, otvaranje slike
Korak 4: Slanje naredbi, otvaranje slike

U redu, sada imamo komandni prozor koji čeka naredbe. Sve što trebamo učiniti je upisati naredbe u prozor pomoću naredbe sendkeys. Kad koristimo naredbu sendkeys, to je kao da kucate, ali će upisati sve što želimo. Sve što možemo otkucati možemo poslati, uključujući tipke enter potrebne za izvršavanje programa. Sada kada znamo kako poslati ključeve, možemo otvoriti našu sliku koju smo upravo napravili, a zatim staviti drugi tajmer nakon što će dati vremena za učitavanje slike. Da bismo to učinili, upisujemo: shellobj.sendkeys "k: / id.bmp {enter}" wscript.sleep 200Šta radi: Ovo je isto što i upisivanje k: / id.bmp u okvir za pokretanje. Trebao bi otvoriti vašu sliku u zadanom pregledniku slika za bmp … u mom slučaju to je preglednik slika za Windows i faks, ali većina ljudi instalira i programe na tržištu koji to rade, pa ko zna u čemu će se vaš otvoriti. Sada spremite datoteku i Trebali biste dobiti naredbeni redak i sliku koja će se pojaviti. za sada je dobro !!! vaš kôd bi do sada trebao biti: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "k: / id.bmp {enter}" wscript. spava 200

Korak 8: Korak 5: Slanje naredbi, isključite Internet

Korak 5: Slanje naredbi, isključite internet
Korak 5: Slanje naredbi, isključite internet

U ovom trenutku, ako to još niste učinili, preuzmite pdf datoteku na kraju pa ako zajebete, preuzmite Instructable kako to popraviti. Sada ovdje počinje zabava. U redu pa ćemo koristiti ipconfig za oslobađanje naše IP adrese. Bez IP adrese ne možemo dobiti internetski promet jer usmjerivač ne zna gdje ga šalje računaru. Da bismo to učinili, upisujemo: shellobj.sendkeys "ipconfig /release {enter}" Šta radi: Ovo upućuje program IPCONFIG da oslobodi IP adresu. {enter} govori računaru da ste pritisnuli taster enter. ovo bi bilo kao da u prozor za pokretanje upišete ipconfig /release i pritisnete enter. Obično nakon što to učinite, ako pokrenete ipconfig, reći će vam da je vaša IP adresa 0.0.0.0 To je ono što želimo. Bez IP adrese usmjerivač ne zna da smo ovdje i nikakvi programi ne mogu takozvano "birati broj". Sada kada smo uspješno završili isključivanje IP -a, želimo zatvoriti prozor. Sada bismo mogli napisati još jedan redak koji kaže: shellobj.sendkeys "exit {enter}" Ali bilo bi lakše samo urediti gornji red i dodati ga na kraj tako da imate: shellobj.sendkeys "ipconfig /release {enter} exit {enter} "Sada ga sačuvajte, ali nemojte ga pokretati jer ćete prekinuti internetsku vezu. Ako ga ipak pokrenete, a internet vam se isključi, samo promijenite prekidač sa ipconfig /release na ipconfig /renew i ponovo ga pokrenite i trebao bi ga ponovo uključiti. A ako sve drugo ne uspije, ponovno pokrenite sistem i trebali biste biti u redu. Vaš dosadašnji kôd bi trebao biti: 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}"

Korak 9: Korak 6: Kreiranje okvira za poruke i čekanje na odgovor

Korak 6: Kreiranje okvira za poruke i čekanje na odgovor
Korak 6: Kreiranje okvira za poruke i čekanje na odgovor

U redu, sada kada smo uspješno isključili internet i zatvorili prozor naredbenog retka, želimo da se pojavi okvir s porukom s pitanjem želimo li ponovo uključiti internet. Ali ovdje postaje teško, želimo da pričeka za da, ali ako kliknemo ne, ne želimo da nestane pa ćemo upotrijebiti naredbu while za to. Prvo moramo dimenzionirati varijablu za poruka tako da joj možemo dodijeliti varijable broja. Znam da zvuči zbunjujuće, ali zapravo nije. već smo to jednom učinili s retkom: set shellobj = CreateObject ("WScript. Shell") ovaj je još lakši za postavljanje samo ukucamo: Dim MyVarŠta radi: Sada smo dimenzionirali varijablu pod imenom MyVarKad dobijete "da" /no "pojavit će se okvir s porukom na vašem ekranu i kada pritisnete gumbe dodjeljuje vrijednost svakom gumbu, u ovom slučaju" da "je 1, a" ne "je 2. Želimo da varijabla počinje s" ne "Dakle zadano mu dodjeljujemo broj 2, na ovaj način se pauzira dok se ne pritisne dugme. Da bismo to učinili, upisujemo: myvar = 2Šta radi: sada je MyVar jednako 2, pa će se u sljedećem retku zaustaviti i čekati na unos. Sada samo želimo da sjedne i čeka dok ne budemo spremni za ponovno uključivanje interneta. Da bismo to učinili, upisujemo: while myvar = 2Što radi: Ovim smo skriptu rekli da je sve dok je vrijednost myvara = 2, onda nastavite ponavljati okvir za poruke sve dok ne dobijemo bilo koju vrijednost osim 2, koja bi u ovom slučaju mogla biti samo 1Sljedeće zapravo želimo učiniti da se okvir za poruke pojavi sa gumbima da/ne. ovo otkucamo: MyVar = MsgBox ("Uključi internetsku vezu", 65, "Uključi internetsku vezu") Šta radi: Sada će promenljivoj MyVar biti dodeljena bilo koja vrednost koja je dodeljena dugmetu na koje se klikne u okviru za poruku. prvi dio citata je ono što će okvir za poruke zapravo reći. 65 ga označava kao Da/Ne okvir za poruke. a posljednji dio pod navodnicima je oznaka messagebox.to da provjerite koju vrijednost dodjeljuje kada kliknete da ili ne, možete dodati u red u kojem piše msgbox (myVar) i ispisat će se bilo koja vrijednost dodijeljena myvaru u okvir za poruku. sada kada imamo okvir za poruku moramo zatvoriti while naredbu. Sve što se nalazi između naredbe open i close of while izvršavat će se svaki put kada kliknete ne, jer ako kliknete na ne, to je i dalje vrijednost 2 i petlja se natrag u prvi dio. Da biste završili tip naredbe while: wendWhat it does: Kada jednom staviš tačku na statement naredbu, ona će se ponašati kao petlja sve dok argument više nije ispunjen. Dakle, ako nastavite pritiskati "no", petlja će se pojaviti, ali kada pritisnete "da", oslobodit će se petlje i nastaviti sa skriptom. Sačuvajte datoteku, ali pričekajte da je pokrenete do sljedećeg koraka. Vaš dosadašnji kôd bi trebao biti: 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 = 2 while myvar = 2MyVar = MsgBox (" Uključi internetsku vezu ", 65," Uključi internetsku vezu ") wend

Korak 10: Korak 7: Ponovno uključivanje interneta

Korak 7: Ponovo uključite Internet
Korak 7: Ponovo uključite Internet
Korak 7: Ponovo uključite Internet
Korak 7: Ponovo uključite Internet
Korak 7: Ponovo uključite Internet
Korak 7: Ponovo uključite Internet

Sada kada je netko konačno kliknuo da i prošlo je while izjavu, moramo urnirati na internetu. Obično pojavim potvrdu kako bi krajnji korisnik znao što se događa, ali to je potpuno neobavezno. Da bi se pojavio tip potvrde: msgbox ("Sada ćemo ponovo uključiti internetsku vezu !!!") Šta radi: šalje okvir s porukom u kojoj piše Sada ćemo ponovo uključiti internetsku vezu !!! i daje vam gumb ok da kliknete. Sada sve što trebamo učiniti je ponovo uključiti internet i zatvoriti sve. Za ponovno uključivanje interneta samo otvaramo naredbeni redak, postavljamo tajmer, a zatim ponovo koristimo ipcionfig. tip: shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "ipconfig /renew {enter}" Šta radi: poništava naredbu za isključivanje od ranije i obnavlja vašu IP adresu. Nakon što obnovite svoju IP adresu, sada možete ponovo uspostaviti internetsku vezu. Sada nam preostaje samo očistiti otvorene prozore. Opet bismo mogli koristiti naredbu sendkeys, ali ja ću samo dodati zadnji red da zadržim i čišćenje. U ovom slučaju ću koristiti taskkill program da ubijem program koji prikazuje sliku. U ovom slučaju to je preglednik slika i faksova za Windows i prikazuje se kao rundll32.exe na kartici Procesi upravitelja zadataka, pa je to ono što trebamo ubiti. Ako se vaša slika otvori pomoću drugog programa, poput irfanview -a ili acdsee -a, pronađite njeno ime na kartici Procesi i postavite rundll32.exe sa imenom koje ćete pronaći. Naredba bi bila: taskkill /F /IM rundll32.exeŠta je to does: taskkill je naziv programa koji mu /F prekidač kaže da forsira ubijanje, a /IM prekidač mu kaže naziv slike. Sada to dodajemo u zadnji red, dodamo enter za izvršavanje naredbe, a zatim naredba exit i još jedan enter i izgleda ovako: shellobj.sendkeys "ipconfig /renew {enter} taskkill /F /IM rundll32.exe {enter} exit {enter}" Sačuvajte datoteku.

Korak 11: Gotov proizvod

Gotov proizvod
Gotov proizvod

Ako je sve prošlo kako treba, vaš gotov proizvod trebao bi izgledati otprilike ovako: postavite 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 = 2 while myvar = 2MyVar = MsgBox ("Uključi internetsku vezu", 65, "Uključi internetsku vezu") wendmsgbox ("Sada ćemo uključiti Internet Ponovo uspostavljena veza !!! ") shellobj.run" cmd "wscript.sleep 200shellobj.sendkeys" ipconfig /renew {enter} taskkill /F /IM rundll32.exe {enter} exit {enter} "_kraj skripte_Sada je programiranje Gotovo možete pokrenuti program. Šta bi se trebalo dogoditi: 1.) Trebalo bi da se prozor za CMD pojavi na vrlo kratko vrijeme, a zatim da se zatvori2.) Vaš internet više ne bi trebao raditi. ali ovo nećete vidjeti3.) Vaša slika bi se trebala otvoriti.4.) Trebalo bi da se pojavi skočni prozor koji će vas pitati želite li ponovo uključiti internet.5.) Bez obzira koliko puta pritisnuli, okvir za poruku ne bi trebao zvučati ponovo ste se otvorili s pitanjem želite li ponovo uključiti internet.6.) Nakon što pritisnete da, okvir za poruku bi trebao nestati i CMD prozor bi se trebao ponovno pojaviti7.) Nakon što se IP adresa obnovi, CMD prozor i slika treba zatvoriti. Evo ga. Vrlo jednostavan VBscript za uključivanje i isključivanje interneta. Nadam se da vam se sviđa. Zapravo sam napravio još jednu skriptu koja je gotovo identična ovoj koja isključuje mrežne adaptere pomoću programa pod nazivom DevCon, koji je poput upravitelja uređaja iz komandne linije. Odlično funkcionira. Skripta je identična ovoj osim ako u ovoj ima naredbe za ipconfig da jedna ima naredbe za DevCon.

Preporučuje se: