Sisukord:

VB skripti sissejuhatus: algajate juhend: 11 sammu
VB skripti sissejuhatus: algajate juhend: 11 sammu

Video: VB skripti sissejuhatus: algajate juhend: 11 sammu

Video: VB skripti sissejuhatus: algajate juhend: 11 sammu
Video: Как реализовать COBie (просто) 2024, Juuli
Anonim
VB skripti sissejuhatus: algajate juhend
VB skripti sissejuhatus: algajate juhend

*** ((((HOIATUS: Kuigi samme on palju. See on tegelikult üsna lihtne. Ma lihtsalt selgitan kõike üksikasjalikult algajatele. Kui soovite lihtsalt koodi hüpata viimasele sammule koodi seal.)))) *** Mängin palju Xbox Live'i ja pean alati oma arvutis Interneti keelama, kuna see suurendab ribalaiust. Peamiselt seetõttu, et laadin või laadin pidevalt asju üles. Probleem ei ole selle väljalülitamine, kuid see lülitab selle uuesti sisse, et ma unustan, muutes selle sinna, kus ma kaotan kogu selle üleslaadimise/allalaadimise aja. Nii et ma otsustasin luua programmi, et seda minu jaoks teha. Ma kavatsesin selle Vb.net -i kirjutada, kuid pidin alles hiljuti oma arvutis operatsioonisüsteemi tuuma ajama ja sillutama, kuna kõva ketas praadis paha torm, ja pole veel VB.neti uuesti installinud, nii et arvasin, et see andke mulle põhjus vbscriptiga mängida. Tegin ka värviga pildi, mida taustal kuvada, nii et teadsin, et see töötab.

Samm: mõelge välja, mida soovite teha

Mõelge välja, mida soovite teha
Mõelge välja, mida soovite teha

Esimene asi, mida ma alati teen, on plaani koostamine. Mida ma tahan, et programm teeks? A) Ma tahan, et oleks võimalik skripti avada ja see lülitab ühenduse automaatselt välja. B) Ma tahan, et see kuvaks taustal hiiglaslikku ekraani, nii et pole viga, et Internet on välja lülitatud, nii et ma ei unusta seda uuesti sisse lülitada. C) Ma tahan, et see annaks mulle võimaluse selle sisse lülitada uuesti sisse ja siis oodake vastust. D) Ma tahan, et ma selle kindlasti sisse lülitaksin, et ma ei unustaks. E) Siis kui ma ütlen jah, et see uuesti sisse lülitada, lülitab skript selle uuesti sisse ja seejärel sulgeb tausta. F) Väljuge kõigest.

Samm: asjad, mida ma kasutan, kuid pole tegelikult vaja

Asjad, mida kasutan, kuid pole tegelikult vaja
Asjad, mida kasutan, kuid pole tegelikult vaja

Kõik, mida vajate, on tekstiredaktor nagu märkmik. Kõik muu on valikuline. Ma kasutan VB skripti tegemisel Notepad ++, sest see kohtleb seda nagu vb.net värvidega ja tunneb keelt. See aitab vigu vältida. See nummerdab ka read, nii et saate veakoodi saamisel diagnoosida, mis on probleem. Saab siit märkmik ++

Samm: alustage programmeerimist

Alustage programmeerimist
Alustage programmeerimist

Esimene asi, mida soovite teha, on luua tekstifail ja salvestada see faililaiendiga.vbsExample: NetworkShutOffScriptThatShutsOffTheInternetSoIcanPlayGamesOnMyXboxAndNotGetLag.vbsExample 2: games.vbs Tavaliselt teen seda töölaual, sest avan selle töötamise ajal umbes miljon korda. Nüüd paremklõpsake faili ja klõpsake nuppu Muuda või muuda märkmikuga ++

4. samm: 1. samm: käsuviiba akna avamine

Samm: käsuviiba akna avamine
Samm: käsuviiba akna avamine

Nii otsustasin teha suurema osa tööst, kasutades selleks lihtsalt arvutisse salvestatud programme, et teha seda, mida tahan. Vähem kodeerimist ja allalaadimisi pole … Woohoo. Easiest on käsuviip. Nii et me tahame avada käsuviiba akna, et me tahaksime ehitada objekti, et seda teha, kirjutame: set shellobj = CreateObject ("WScript. Shell") Mida see teeb: Määrake shellobj eksemplar võrdseks, et luua objekt skripti kest. Sel viisil peame ainult kirjutama CreateObject ("WScript. Shell") asemel shellobj iga kord, kui vajame uut käsku. Nüüd, kui oleme loonud objekti, anname objektile käsurea akna avamise. Selleks sisestame: shellobj.run "cmd" Mida see teeb: See võrdub CMD tippimisega käivitusmenüü käivituskasti. Kui me poleks määranud muutuvat shellobjekti, oleksime pidanud sisestama: CreateObject ("WScript. Shell"). Käivitage "cmd" … vaadake, kui palju lihtsam see nüüd on. Vähem ruumi vigadele. Klõpsake faili… seejärel Salvesta… seejärel minge töölauale ja topeltklõpsake vbsfile, mille see käivitas. Kui kõik läheb õigesti, peaksite ilmuma Windowsi käsuviiba … oma kodeeringut, seni peaks teil olema: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" Saate oma skripti lisada kommentaare, et saaksite hiljem meelde jätta, mida tegite, pannes rea ette koma, näiteks see: "see on käsuviiba avamine. Kui ma palju kordi kodeerin, teen seda nii, et mäletan seda, mida hiljem tegin, kui seda vaatasin. Skript lihtsalt ignoreerib seda joont ja liigub edasi. Kui näete neid, saate sama teha.

5. samm: 2. samm: taimerite seadistamine

2. samm: taimerite seadistamine
2. samm: taimerite seadistamine

Ok, nüüd, kui meil on uus aken, peame selle täitma käskudega, et saaksime selle teha, mida tahame. Probleem on selles, et mõnel arvutil kulub akende avamiseks teistest kauem aega, nii et soovime, et skript ootaks natuke natuke alustuseks. Kui see käivitub liiga kiiresti, täidab arvuti enne akna avamist tühja ruumi ja saate kas osalise käsu või üldse mitte. Seega peame seadistama taimeri. Selleks tipime: wscript.sleep 200Mida see teeb: See käsib skriptil oodata X aega enne järgmise käsu täitmist. 1000 võrdub ühe sekundiga, nii et minu oma ootab viiendikku sekundist. Võib juhtuda, et teie arvuti peab ootama rohkem või vähem aega. Kui vaatate arvutit ja see ei sisesta käske õigesti, muutke number suuremaks, näiteks 2000, oleks 2 sekundit ja tõenäoliselt palju aega. Salvestage fail nüüd, teie kood peaks praegu olema järgmine: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200

6. samm: 3. samm: tehke pilt

3. samm: tehke pilt
3. samm: tehke pilt

Avasin just värvi ja trükkisin sinna "Internet Disconected" ja tegin 800x600 ning salvestasin selle id.bmp ja salvestasin selle oma juurkataloogi, minu puhul k: / aga sinu oma on tõenäoliselt c:

Samm: samm 4: käskude saatmine, pildi avamine

4. samm: käskude saatmine, pildi avamine
4. samm: käskude saatmine, pildi avamine

Ok, nüüd, kui meil on käsuaken, mis ootab käske, peame vaid sisestama käsud sendkeys käsuga aknasse. Kui kasutame käsku sendkeys, on see nagu kirjutamine, kuid see sisestab kõik, mida me soovime. Kõik, mida saame kirjutada, saame saata, sealhulgas programmide käivitamiseks vajalikud sisestusklahvid. Nüüd, kui me teame, kuidas võtmeid saata, saate avada meie tehtud pildi ja seejärel sisestada teise taimeriga järelsõna, nii et see annaks pildi laadimiseks aega. Selleks tipime: shellobj.sendkeys "k: / id.bmp {enter}" wscript.sleep 200Mida see teeb: See on sama, kui sisestada käivituskasti k: / id.bmp. See peaks avama teie pildi bmp jaoks vaikimisi pildivaatajas … minu puhul on see Windowsi pildi- ja faksivaataja, kuid enamik inimesi installib ka turuprogramme, mis seda teevad, nii et kes teab, mis teie avaneb. Salvestage nüüd oma fail ja käivitage see. Te peaksite saama käsuviiba ja hüpikpildi. siiani nii hea !!! teie senine kood peaks olema järgmine: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "k: / id.bmp {enter}" wscript. maga 200

8. samm: 5. samm: käskude saatmine, lülitage Internet välja

5. samm: käskude saatmine, lülitage Internet välja
5. samm: käskude saatmine, lülitage Internet välja

Praegu, kui te pole seda veel teinud, laadige alla pdf -fail lõpus, nii et kui te keerate, olete alla laadinud Instructable selle parandamiseks. Nüüd algab lõbu. Olgu, nii et kasutame oma IP -aadressi vabastamiseks ipconfigit. Ilma IP -aadressita ei saa me Interneti -liiklust, sest ruuter ei tea, kuhu see arvutisse saata. Selleks tipime: shellobj.sendkeys "ipconfig /release {enter}" Mida see teeb: See annab programmile IPCONFIG juhise vabastada IP -aadress. {enter} ütleb arvutile, et vajutasite sisestusklahvi. see oleks nagu kirjutada käivitusaknasse ipconfig /release ja vajutada sisestusklahvi. Tavaliselt ütleb see pärast ipconfigi käivitamist, et teie IP -aadress on 0.0.0.0 Seda me soovime. Ilma IP -aadressita ei tea ruuter, et me oleme siin, ja ükski programm ei saa nii -öelda välja helistada. Nüüd, kui oleme edukalt lõpetanud IP sulgemise, tahame akna sulgeda. Nüüd võiksime kirjutada veel ühe rea, mis ütleb: shellobj.sendkeys "exit {enter}" Aga lihtsam oleks lihtsalt ülaltoodud rida redigeerida ja lõpuni lisada, nii et teil oleks: shellobj.sendkeys "ipconfig /release {enter} exit {enter} "Salvestage see nüüd, kuid ärge seda käivitage, kuna lülitate oma Interneti -ühenduse välja. Kui käivitate selle ja teie Internet lülitub välja, muutke lihtsalt lüliti ipconfig /release asemel ipconfig /uuendamiseks ja see käivitab selle uuesti ning peaks selle uuesti sisse lülitama. Ja kui kõik muu ebaõnnestub, taaskäivitage ja teiega peaks kõik korras olema. Teie senine kood peaks olema järgmine: 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. samm: 6. samm: sõnumikasti loomine ja vastuse ootamine

6. samm: sõnumikasti loomine ja vastuse ootamine
6. samm: sõnumikasti loomine ja vastuse ootamine

Ok, nüüd, kui oleme Interneti edukalt välja lülitanud ja käsuviiba akna sulgenud, tahame, et ilmuks sõnumikast, kus küsitakse, kas tahame Interneti uuesti sisse lülitada. Aga siin on see keeruline, tahame, et see ootaks jah, aga kui me klõpsame ei, ei taha me, et see ära läheks, nii et me kasutame selleks mõnda aega avaldust. Esiteks peame mõõtmiskasti muutuja mõõtma, et saaksime sellele numbrilised muutujad määrata. Ma tean, et see kõlab segaselt, kuid tegelikult pole see nii. me tegime seda juba kord reaga: set shellobj = CreateObject ("WScript. Shell") seda on isegi lihtsam seadistada, lihtsalt kirjutame: Dim MyVarMida see teeb: Nüüd oleme mõõtme muutuja nimega MyVar Kui saate "jah" /ei "ekraanile ilmub sõnumikast ja klõpsate nuppe, mis määravad igale nupule väärtuse, antud juhul on" jah "1 ja" ei "2. Soovime, et muutuja algaks" ei " määrame talle vaikimisi numbri 2, sel viisil peatub see nupu klõpsamiseni. Selleks kirjutame: myvar = 2 Mida see teeb: nüüd on MyVar võrdne 2 -ga, sel moel järgmisel real see peatub ja ootab sisestust. Nüüd tahame, et see lihtsalt istuks seal ja ootaks, kuni oleme valmis Interneti uuesti sisse lülitama. Selleks kirjutame: while myvar = 2 Mida see teeb: Seda tehes oleme skriptile öelnud, et nii kaua kui myvar = 2, siis jätkake sõnumikasti loopimist, kuni saame muu väärtuse kui 2, mis sel juhul võib olla ainult 1. Järgmisena tahame tegelikult teha sõnumikastis hüpikakna jah/ei nuppudega. seda me kirjutame: MyVar = MsgBox ("Lülita Interneti -ühendus sisse", 65, "Lülita Interneti -ühendus sisse") Mida see teeb: Nüüd määratakse MyVar muutujale mis tahes väärtus, mis on määratud nupule, millele sõnumikastil klõpsatakse. jutumärkide esimene osa on see, mida sõnumikast tegelikult ütleb. 65 määrab selle sõnumikastiks Jah/Ei. ja viimane osa jutumärkides on sõnumikasti alaosa. kontrollimiseks, millist väärtust see määrab, kui klõpsate jah või ei, võite lisada rea, mis ütleb msgbox (myVar) ja see prindib mis tahes väärtuse, mis on myvarile määratud sõnumikast. nüüd, kui meil on sõnumikast, peame lause while sulgema. Kõik, mis on lause avamise ja sulgemise vahel, käivitub iga kord, kui klõpsate ei, sest kui klõpsate ei, on see ikkagi väärtus 2 ja liigub tagasi esimesse ossa. Lause tüübi lõpetamiseks: wendWhat teeb: Kui lõpetad mõnda aega avalduse, siis toimib see silmustena, kuni argument pole enam täidetud. Nii et kui jätkuvalt vajutate ei, siis see ringleb, kuid kui vajutate jah, vabaneb see tsüklist ja jätkab skriptiga. Salvestage fail, kuid oodake selle käivitamist järgmise sammuni. Seni peaks teie kood olema järgmine: 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 (" Lülita Interneti -ühendus sisse ", 65," Lülita Interneti -ühendus sisse ") wend

Samm 10: samm 7: Interneti uuesti sisselülitamine

Samm: Interneti uuesti sisse lülitamine
Samm: Interneti uuesti sisse lülitamine
Samm: Interneti uuesti sisse lülitamine
Samm: Interneti uuesti sisse lülitamine
Samm: Interneti uuesti sisse lülitamine
Samm: Interneti uuesti sisse lülitamine

Nüüd, kui keegi lõpuks klõpsas jah ja see on avalduse while läbinud, peame internetis urnima. Tavaliselt ilmub mulle kinnitus, nii et lõppkasutaja teab, mis toimub, kuid see on puhtalt vabatahtlik. Kinnituse tüübi avamiseks: msgbox ("Nüüd lülitame Interneti -ühenduse uuesti sisse !!!") Mida see teeb: see saadab sõnumikasti, mis ütleb, et lülitame nüüd Interneti -ühenduse uuesti sisse !!! ja annab teile klõpsamiseks OK nupu. Nüüd peame tegema ainult Interneti uuesti sisse ja sulgema kõik. Interneti uuesti sisselülitamiseks avame lihtsalt käsuviiba, seadistage taimer ja kasutage uuesti ipcionfig. tüüp: shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "ipconfig /uuenda {enter}" Mida see teeb: see muudab varasema väljalülitamise käsu ja uuendab teie IP -aadressi. Kui olete oma IP -aadressi uuendanud, saate nüüd uuesti Interneti -ühenduse. Nüüd peame vaid puhastama avatud aknad. Jällegi võiksime kasutada käsku sendkeys, kuid lisan puhastamiseks ka viimase rea. Sel juhul kasutan pilti kuvava programmi tapmiseks taskkilli programmi. Sel juhul on see Windowsi piltide ja fakside vaatur ning see kuvatakse tegumihalduri protsesside vahekaardil rundll32.exe, nii et me peame selle tapma. Kui teie pilt avaneb mõne muu programmi (nt irfanview või acdsee) abil, leidke protsesside vahekaardilt nimi ja asendage rundll32.exe leitud nimega. Käsk oleks: taskkill /F /IM rundll32.exe teeb: taskkill on selle programmi nimi, mille lüliti /F käsib sundida tapma ja /IM lüliti ütleb pildi nime. Nüüd lisame selle viimasele reale, lisame käsu täitmiseks sisestusklahvi ja seejärel exit käsk ja teine sisestusklahv ja see näeb välja selline: shellobj.sendkeys "ipconfig /uuenda {enter} taskkill /F /IM rundll32.exe {enter} exit {enter}" Salvesta fail.

11. samm: valmistoode

Lõpetatud toode
Lõpetatud toode

Kui kõik läks õigesti, peaks teie valmistoode välja nägema umbes selline: 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 ("Lülita Interneti -ühendus sisse", 65, "Lülita Interneti -ühendus sisse") wendmsgbox ("Me hakkame nüüd Internetti keerama Ühendus uuesti sisse !!! ") shellobj.run" cmd "wscript.sleep 200shellobj.sendkeys" ipconfig /uuenda {enter} taskkill /F /IM rundll32.exe {enter} exit {enter} "_skript_ lõpp Kui olete valmis, saate programmi käivitada. Mis peaks juhtuma: 1.) CMD aken peaks ilmuma väga lühikese aja jooksul ja seejärel sulgema2.) Teie internet ei peaks enam töötama. 3.) Teie pilt peaks avanema. 4.) Te peaksite saama hüpikakna, kus küsitakse, kas soovite Interneti uuesti sisse lülitada. 5.) Pole tähtis, mitu korda klõpsate 6. aga) Kui klõpsate jah, peaks teadete kast kaduma ja CMD aken peaks uuesti ilmuma7.) Kui IP -aadress on uuendatud, siis CMD aken ja pilt peaks sulgema. Seal on see olemas. Väga lihtne VBscript Interneti sisse ja välja lülitamiseks. Loodan, et sulle meeldib. Ma tegin tegelikult teise skripti, mis on peaaegu identne selle skriptiga, mis lülitab võrguadapterid välja programmiga DevCon, mis on nagu käsurea seadmehaldur. Töötab päris hästi. Skript on identne selle skriptiga, välja arvatud juhul, kui sellel on ipconfigi jaoks käsud, millel on käsud DevConi jaoks.

Soovitan: