Kazalo:

Uvod v skript VB: vodnik za začetnike: 11 korakov
Uvod v skript VB: vodnik za začetnike: 11 korakov

Video: Uvod v skript VB: vodnik za začetnike: 11 korakov

Video: Uvod v skript VB: vodnik za začetnike: 11 korakov
Video: Полное руководство по Google Forms - универсальный инструмент для опросов и сбора данных онлайн! 2024, Julij
Anonim
Uvod v skript VB: Vodnik za začetnike
Uvod v skript VB: Vodnik za začetnike

*** ((((OPOZORILO: Čeprav je veliko korakov. To je pravzaprav precej preprosto. Za začetnike samo podrobno razložim. Če želite le, da koda skoči na zadnji korak, boste našli celotno kodo tam.)))) *** Igram veliko Xbox v živo in vedno moram onemogočiti internet na svojem računalniku, ker s tem preprečuje pasovno širino. Predvsem zato, ker ves čas nalagam ali nalagam stvari. Težava ni v tem, da ga izklopiš, ampak ga vklopiš nazaj, na kar pozabim, tako da izgubim ves čas nalaganja/prenosa. Zato sem se odločil ustvariti program, ki bi to naredil namesto mene. Nameraval sem ga napisati na Vb.net, vendar sem moral pred kratkim razstreliti in tlakovati svoj operacijski sistem v računalniku zaradi slabe nevihte, ki je prežgala moj trdi disk, in še nisem znova namestil VB.net, zato sem mislil, da bo to daj mi razlog, da se igram z vbscript. Naredil sem tudi sliko v barvi za prikaz v ozadju, da sem vedel, da teče.

1. korak: Ugotovite, kaj želite narediti

Ugotovite, kaj želite narediti
Ugotovite, kaj želite narediti

Prva stvar, ki jo vedno naredim, je, da naredim načrt. Kaj želim, da program naredi? A) Želim imeti možnost odpreti skript in samodejno bo prekinil povezavo. B) Želim, da prikaže velik zaslon v ozadju, tako da ni napake, da je internet izklopljen, zato ga ne pozabim znova vklopiti. C) Želim, da mi da možnost izbire ponovno vklopite in nato počakajte na odgovor. D) Želim, da se prepričam, da ga ponovno vklopim, da ne pozabim. E) Potem, ko pravzaprav rečem da, da ga znova vklopim, ga skript znova vklopi in nato zapre ozadje. F) Zapustite vse.

2. korak: Stvari, ki jih uporabljam, vendar niso potrebne

Stvari, ki jih uporabljam, vendar niso potrebne
Stvari, ki jih uporabljam, vendar niso potrebne

Vse, kar resnično potrebujete, je urejevalnik besedil, kot je beležnica. Vse drugo je neobvezno. Beležko ++ uporabljam, ko delam skript VB, ker ga obravnava tako kot vb.net z barvami in pozna jezik. Pomaga se izogniti napakam. Prav tako oštevilčuje vrstice, tako da lahko ugotovite, v čem je težava, ko dobite kodo napake. Od tu lahko dobite notepad ++

Korak: Začnite s programiranjem

Začnite s programiranjem
Začnite s programiranjem

No, najprej morate ustvariti besedilno datoteko in jo shraniti v karkoli želite, da se imenuje z razširitvijo datoteke.vbsPrimer: NetworkShutOffScriptThatShutsOffTheInternetSoIcanPlayGamesOnMyXboxAndNotGetLag.vbs Primer 2: games.vbs Vse, kar je pomembno, je, da poimenujete datoteko.vbsTo običajno počnem na namizju, ker ga odprem približno milijonkrat, medtem ko delam na njem. Zdaj samo z desno tipko miške kliknite datoteko in pritisnite urejanje ali urejanje z beležnico ++

4. korak: 1. korak: Odpiranje okna ukaznega poziva

1. korak: Odpiranje okna ukaznega poziva
1. korak: Odpiranje okna ukaznega poziva

Zato sem se odločil, da bom večino dela opravil s programi, ki so že shranjeni v računalniku, da naredim, kar hočem. Manj kodiranja in brez prenosov … Woohoo. Najlažji je ukazni poziv. Zato želimo odpreti okno ukaznega poziva, da to naredimo, zato želimo zgraditi objekt, ki ga naredimo, tako da vtipkamo: set shellobj = CreateObject ("WScript. Shell") Kaj počne: Nastavite primerek shellobj na enak, da ustvarite objekt w skriptno lupino. Na ta način vse, kar moramo storiti, je, da vsakič, ko potrebujemo nov ukaz, vnesemo shellobj namesto CreateObject ("WScript. Shell"). Ko smo ustvarili predmet, mu naročimo, naj odpre okno ukaznega poziva. To naredimo tako: shellobj.run "cmd" Kaj počne: To bi bilo enako vnosu CMD v polje za zagon v začetnem meniju. Če ne bi nastavili spremenljivke shellobject, bi morali vnesti: CreateObject ("WScript. Shell"). Zaženite "cmd" … poglejte, kako lažje je zdaj. Manj prostora za napake. Kliknite datoteko … nato Shrani … nato pojdite na namizje in dvokliknite datoteko vbsfile, ki bi jo morali zagnati Če je vse v redu, bi morali prikazati ukazni poziv sistema Windows …..aaaaaa !!! če ne preverite vaše kodiranje, doslej bi morali imeti: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" V svoj skript lahko dodate komentarje, da se spomnite, kaj ste naredili pozneje, tako da pred vrstico postavite vejico, kot je to: 'to je za odpiranje ukaznega poziva Ko bom večkrat kodiral, bom to storil, da se spomnim, kaj sem naredil pozneje, ko sem to iskal. Skript preprosto zanemari to vrstico in gre naprej. Če jih vidite, lahko storite enako.

5. korak: 2. korak: Nastavitev časovnikov

2. korak: Nastavitev časovnikov
2. korak: Nastavitev časovnikov

Ok, ko imamo novo okno, ga moramo zapolniti z ukazi, da lahko naredimo, kar želimo. Težava je v tem, da nekateri računalniki odprejo okna dlje kot drugi, zato želimo, da skript malo počaka malo za začetek. če se prezgodaj zažene, bo računalnik zapolnil prazno mesto, preden odprete okno in dobili boste delni ukaz ali pa ga sploh ne boste dobili. Zato moramo nastaviti časomer. Če želite to narediti, vtipkamo: wscript.sleep 200 Kaj počne: Skriptu pove, naj počaka X čas pred izvedbo naslednjega ukaza. 1000 je ena sekunda, zato moja čaka petino sekunde. Morda boste ugotovili, da mora računalnik čakati dlje ali manj. Če gledate računalnik in ne vnese ukazov pravilno, spremenite številko na višjo številko, na primer 2000 bi bilo 2 sekundi in verjetno veliko časa. Shranite datoteko, koda na tem mestu bi morala biti: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200

Korak 6: Korak 3: Ustvarite sliko

3. korak: Ustvarite sliko
3. korak: Ustvarite sliko

Pravkar sem odprl barvo in vanj vtipkal "Internet Disconected" in jo naredil 800x600 ter jo shranil kot id.bmp in shranil v svoj korenski imenik, v mojem primeru k: / toda tvoj bo verjetno c:

7. korak: 4. korak: pošiljanje ukazov, odpiranje slike

4. korak: Pošiljanje ukazov, odpiranje slike
4. korak: Pošiljanje ukazov, odpiranje slike

Ok, ko imamo ukazno okno, ki čaka na ukaze, moramo samo vnesti ukaze v okno z ukazom sendkeys. Ko uporabljamo ukaz sendkeys, je kot tipkanje, vendar bo vnesel vse, kar želimo. Vse, kar lahko vnesemo, lahko pošljemo, vključno s ključi za vnos, ki so potrebni za izvajanje programov. Zdaj, ko vemo, kako pošiljati ključe, lahko odpremo sliko, ki smo jo pravkar naredili, nato pa vstavimo še drugo besedilo časovnika, tako da se slika naloži. Če želite to narediti, vtipkamo: shellobj.sendkeys "k: / id.bmp {enter}" wscript.sleep 200 Kaj počne: To je enako, kot da v polje za zagon vnesete k: / id.bmp. Moral bi odpreti vašo sliko v privzetem pregledovalniku slik za bmp … v mojem primeru gre za pregledovalnik slik in faksov v sistemu Windows, vendar večina ljudi namešča tudi programe na trgu, ki to počnejo, zato kdo ve, kaj se bo odprlo v vašem. Zdaj shranite datoteko in Zagnati morate ukazni poziv in prikazano sliko. zaenkrat dobro !!! vaša koda bi morala biti: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "k: / id.bmp {enter}" wscript. spi 200

8. korak: 5. korak: pošiljanje ukazov, izklop interneta

5. korak: Pošiljanje ukazov, izklop interneta
5. korak: Pošiljanje ukazov, izklop interneta

Na tej točki, če tega še niste storili, na koncu prenesite datoteko pdf, tako da, če se zmotite, imate naložen Instructable, kako to popraviti. Zdaj se zabava začne. V redu, zato bomo za izdajo naslova IP uporabili ipconfig. Brez naslova IP ne moremo dobiti nobenega internetnega prometa, ker usmerjevalnik ne ve, kam ga poslati v računalnik. Če želite to narediti, vtipkamo: shellobj.sendkeys "ipconfig /release {enter}" Kaj počne: To naroči programu IPCONFIG, naj sprosti naslov IP. {enter} računalniku sporoča, da ste pritisnili tipko enter. to bi bilo kot, da v okno za zagon vnesete ipconfig /release in pritisnete enter. Običajno po tem, ko zaženete ipconfig, vam bo povedal, da je vaš naslov IP 0.0.0.0 To želimo. Brez naslova IP usmerjevalnik ne ve, da smo tukaj, in noben program tako rekoč ne more "poklicati". Zdaj, ko smo uspešno zaključili izklop IP -ja, želimo zapreti okno. Zdaj bi lahko napisali drugo vrstico, ki pravi: shellobj.sendkeys "exit {enter}" Vendar bi bilo lažje zgolj urediti zgornjo vrstico in jo dodati na konec, tako da imate: shellobj.sendkeys "ipconfig /release {enter} exit {enter} "Zdaj ga shranite, vendar ga ne zaženite, ker boste prekinili internetno povezavo. Če ga zaženete in se internet izklopi, samo preklopite stikalo iz ipconfig /release na ipconfig /renew in ga znova zaženite in ga morate znova vklopiti. In če vse drugo ne uspe, znova zaženite sistem in bi morali biti v redu. Vaša dosedanja koda bi morala 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}"

9. korak: 6. korak: Ustvarjanje okenca za sporočila in čakanje na odgovor

6. korak: Ustvarjanje okenca za sporočila in čakanje na odgovor
6. korak: Ustvarjanje okenca za sporočila in čakanje na odgovor

Ok, zdaj, ko smo uspešno izklopili internet in zaprli okno ukaznega poziva, želimo, da se prikaže okno s sporočilom, če želimo znova vklopiti internet. Ampak tukaj je težavno, želimo, da počaka za da, če pa kliknemo ne, ne želimo, da izgine, zato bomo za to uporabili stavek while. Najprej moramo dimenzirati spremenljivko za sporočilo, da ji lahko dodelimo številčne spremenljivke. Vem, da se sliši zmedeno, a v resnici ni. to smo že enkrat naredili s vrstico: set shellobj = CreateObject ("WScript. Shell") ta je še lažja za nastavitev, samo vtipkamo: Dim MyVar Kaj počne: Zdaj smo dimenzionirali spremenljivko z imenom MyVar Ko dobite "da" /ne "na zaslonu se prikaže okno s sporočilom in s klikom na gumbe dodelite vrednost vsakemu gumbu, v tem primeru je" da "1 in" ne "je 2. Želimo, da se spremenljivka začne z" ne "Torej privzeto mu dodelimo številko 2, tako da se zaustavi, dokler ne kliknete gumba. Če želite to narediti, vtipkamo: myvar = 2 Kaj počne: zdaj je MyVar enako 2, tako da se bo v naslednji vrstici ustavil in počakal na vnos. Zdaj samo želimo, da sedi tam in počaka, dokler ne bomo pripravljeni znova vklopiti interneta. Za to vtipkamo: while myvar = 2 Kaj počne: S tem smo skriptu povedali, da je vrednost myvar = 2, nato nadaljujte z zapiranjem polja za sporočila, dokler ne dobimo nobene druge vrednosti, razen 2, ki bi bila v tem primeru lahko le 1, poleg tega pa želimo dejansko narediti, da se okno s sporočili prikaže z gumbi da/ne. to vnesemo: MyVar = MsgBox ("Vklopi internetno povezavo", 65, "Vklopi internetno povezavo") Kaj počne: Zdaj bo spremenljivki MyVar dodeljena kakršna koli vrednost, ki je dodeljena gumbu, na katerega kliknete v polju za sporočila. prvi del narekovajev je tisto, kar bo sporočilo dejansko povedalo. 65 ga označuje kot predal za sporočila Da/Ne. in zadnji del v narekovajih je oznaka sporočilnega polja. če želite preveriti, kakšno vrednost dodeli, ko kliknete da ali ne, lahko dodate vrstico z napisom msgbox (myVar) in natisnila bo vrednost, ki je dodeljena myvar v polje za sporočilo. zdaj, ko imamo polje za sporočilo, moramo zapreti stavek while. Vse, kar je med odpiranjem in zapiranjem ukaza while, se bo izvajalo vsakič, ko kliknete ne, ker če kliknete ne, je še vedno vrednost 2 in se vrne nazaj v prvi del. naredi: Ko končate stavek while, bo deloval kot zanka, dokler argument ni več izpolnjen. Torej, če še naprej pritisnete ne, se bo zankalo, ko pa pritisnete da, se bo osvobodilo zanke in nadaljevalo s skriptom. Shranite datoteko, vendar počakajte, da jo zaženete do naslednjega koraka. Vaša dosedanja koda bi morala 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 (" Vklopi internetno povezavo ", 65," Vklopi internetno povezavo ") wend

10. korak: 7. korak: Vnovični vklop interneta

7. korak: Vnovični vklop interneta
7. korak: Vnovični vklop interneta
7. korak: Vnovični vklop interneta
7. korak: Vnovični vklop interneta
7. korak: Vnovični vklop interneta
7. korak: Vnovični vklop interneta

Zdaj, ko je nekdo končno kliknil »da« in je prešel izjavo while, moramo urnirati na internetu. Običajno prikažem potrditev, tako da končni uporabnik ve, kaj se dogaja, vendar je povsem neobvezno. Za pojav potrditvene vrste: msgbox ("Zdaj bomo znova vklopili internetno povezavo !!!") Kaj počne: pošlje polje s sporočilom, ki pravi, da bomo zdaj znova vklopili internetno povezavo !!! in vam da gumb za v redu, da ga kliknete. Zdaj moramo le znova vklopiti internet in zapreti vse. Če želite znova vklopiti internet, odpremo ukazni poziv, nastavimo časovnik in nato znova uporabimo ipcionfig. type: shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "ipconfig /renew {enter}" Kaj počne: razveljavi ukaz za izklop od prej in obnovi vaš naslov IP. Ko obnovite svoj naslov IP, lahko znova vzpostavite internetno povezavo. Zdaj moramo le očistiti odprta okna. Spet bi lahko uporabili ukaz sendkeys, vendar bom samo dodal zadnjo vrstico, da bo tudi čiščenje. V tem primeru bom uporabil program taskkill, da ubijem program, ki prikazuje sliko. V tem primeru gre za pregledovalnik slik in faksov sistema Windows in se prikaže kot rundll32.exe na zavihku procesov upravitelja opravil, zato moramo to ubiti. Če se vaša slika odpre z drugim programom, kot je irfanview ali acdsee, poiščite njeno ime na zavihku procesi in namestite rundll32.exe z imenom, ki ga najdete. Ukaz bi bil: taskkill /F /IM rundll32.exe naredi: taskkill je ime programa, ki mu stikalo /F pove, naj prisili ubijanje, stikalo /IM pa mu pove ime slike. Zdaj dodamo to v zadnjo vrstico, dodamo enter za izvedbo ukaza in nato ukaz exit in še en enter in izgleda tako: shellobj.sendkeys "ipconfig /renew {enter} taskkill /F /IM rundll32.exe {enter} exit {enter}" Shranite datoteko.

11. korak: Končni izdelek

Končan izdelek
Končan izdelek

Če je šlo vse v redu, bi moral biti vaš končni izdelek videti nekako tako: 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 ("Vklopi internetno povezavo", 65, "Vklopi internetno povezavo") wendmsgbox ("Zdaj bomo vklopili internet Ponovno vzpostavljena povezava !!! ") shellobj.run" cmd "wscript.sleep 200shellobj.sendkeys" ipconfig /renew {enter} taskkill /F /IM rundll32.exe {enter} exit {enter} "_konec skripta_Sedaj, ko je programiranje končali, lahko zaženete program. Kaj bi se moralo zgoditi: 1.) Okno CMD bi se moralo pojaviti za zelo kratek čas, nato pa zapreti2.) Vaš internet ne bi smel več delovati. vendar tega ne boste videli. ste pa spet odprli vprašanje, če želite znova vklopiti internet. 6.) Ko kliknete na, bi moralo polje za sporočilo izginiti in okno CMD se mora znova prikazati7.) Ko je naslov IP obnovljen, se prikaže okno CMD in slika Moral bi zapreti. Tukaj je. Zelo enostaven VBscript za vklop in izklop interneta. Upam, da vam je všeč. Pravzaprav sem naredil še en skript, ki je skoraj enak temu, ki izklopi omrežne vmesnike s programom, imenovanim DevCon, ki je podoben upravitelju naprav ukazne vrstice. Deluje zelo dobro. Skript je enak temu, razen če ima v tem ukaze za ipconfig, da ima eden ukaze za DevCon.

Priporočena: