Turinys:

Įvadas į VB scenarijų: pradedančiųjų vadovas: 11 žingsnių
Įvadas į VB scenarijų: pradedančiųjų vadovas: 11 žingsnių

Video: Įvadas į VB scenarijų: pradedančiųjų vadovas: 11 žingsnių

Video: Įvadas į VB scenarijų: pradedančiųjų vadovas: 11 žingsnių
Video: Палеодиета | Руководство для новичков плюс план питания 2024, Gruodis
Anonim
„VB Script“įvadas: pradedančiųjų vadovas
„VB Script“įvadas: pradedančiųjų vadovas

***** kodą.)))) *** Aš žaidžiu daug „Xbox Live“ir visada turiu išjungti internetą savo kompiuteryje, nes jis padidina pralaidumą. Daugiausia dėl to, kad nuolat atsisiunčiu ar įkeliu dalykų. Problema nėra jo išjungimas, bet tai vėl įjungia, kad pamirštu, todėl ten, kur praleidžiu visą tą įkėlimo/atsisiuntimo laiką. Taigi nusprendžiau sukurti programą, kad tai padarytų už mane. Ketinau tai parašyti „Vb.net“, bet visai neseniai turėjau paleisti ir paleisti savo operacinę sistemą savo kompiuteryje dėl blogos audros, kepiančios kietąjį diską, ir dar neįdiegiau „VB.net“, todėl tiesiog supratau, kad tai padarysiu duok man priežastį žaisti su „vbscript“. Aš taip pat padariau vaizdą dažais, kad būtų rodomas fone, todėl žinojau, kad jis veikia.

1 žingsnis: išsiaiškinkite, ką norite daryti

Išsiaiškinkite, ką norite veikti
Išsiaiškinkite, ką norite veikti

Pirmas dalykas, kurį visada darau, yra planuoti. Ką noriu, kad programa darytų? A) Noriu turėti galimybę atidaryti scenarijų ir jis automatiškai išjungs ryšį. B) Noriu, kad fone būtų rodomas milžiniškas ekranas, todėl nėra klaidos, kad internetas yra išjungtas, todėl nepamiršiu jo vėl įjungti. C) Noriu, kad jis suteiktų man galimybę jį įjungti vėl įjunkite ir laukite atsakymo. D) Noriu, kad jis vėl įjungtų, kad nepamirščiau. E) Tada, kai iš tikrųjų sakau „taip“, kad jį vėl įjungčiau, scenarijus vėl jį įjungia ir tada uždaro foną. F) Išeik iš visko.

2 žingsnis: Daiktai, kuriuos naudoju, bet tikrai nereikalingi

Daiktai, kuriuos naudoju, bet tikrai nereikalingi
Daiktai, kuriuos naudoju, bet tikrai nereikalingi

Viskas, ko jums tikrai reikia, yra teksto rengyklė, tokia kaip užrašų knygelė. Visa kita yra neprivaloma. Aš naudoju „Notepad ++“, kai darau VB scenarijų, nes jis elgiasi taip, kaip vb.net daro su spalvomis ir žino kalbą. Tai padeda išvengti klaidų. Taip pat numeruojamos eilutės, kad gavę klaidos kodą galėtumėte diagnozuoti, kokia yra problema. Galima gauti iš čia užrašų knygelės ++

3 žingsnis: Pradėkite programavimą

Pradėkite programuoti
Pradėkite programuoti

Pirmas dalykas, kurį norite padaryti, yra sukurti tekstinį failą ir išsaugoti jį taip, kaip norite, kad jis būtų pavadintas naudojant failo plėtinį.vbs.vbs Paprastai tai darau darbalaukyje, nes dirbu prie jo maždaug zilijoną kartų. Dabar tiesiog dešiniuoju pelės mygtuku spustelėkite failą ir paspauskite redaguoti arba redaguoti naudodami užrašų knygelę ++

4 veiksmas: 1 veiksmas: atidarykite komandinės eilutės langą

1 veiksmas: atidarykite komandinės eilutės langą
1 veiksmas: atidarykite komandinės eilutės langą

Taigi nusprendžiau atlikti didžiąją dalį darbo ir tiesiog naudoti kompiuteryje jau išsaugotas programas, kad galėčiau daryti tai, ko noriu. Mažiau kodavimo ir jokių atsisiuntimų … „Woohoo. Easiest“yra komandų eilutė. Todėl norime atidaryti komandų eilutės langą, norėdami sukurti objektą: Nustatykite „shellobj“egzempliorių, kad jis būtų lygus, kad būtų sukurtas objektas su scenarijaus apvalkalu. Tokiu būdu mums tereikia kaskart, kai mums reikia naujos komandos, įvesti „shellobj“, o ne „CreateObject“(„WScript. Shell“). Dabar, kai sukūrėme objektą, nurodome objektui atidaryti komandų eilutės langą. shellobj.run "cmd" Ką tai daro: Tai būtų tolygu įvesti CMD į meniu Pradėti. Jei nebūtume nustatę kintamojo „shellobject“, būtume turėję įvesti: „CreateObject“(„WScript. Shell“). Paleiskite „cmd“… pažiūrėkite, kaip dabar lengviau. Mažiau vietos klaidoms. Spustelėkite failą … tada Išsaugoti … tada eikite į darbalaukį ir dukart spustelėkite jūsų sukurtą vbsfile. Jei viskas gerai, turėtumėte gauti „Windows“komandų eilutę, kad būtų rodoma ….. savo kodavimą, kol kas turėtumėte: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" Galite pridėti komentarus prie savo scenarijaus, kad prisimintumėte, ką padarėte vėliau, prieš eilutę įdėdami kablelį, pvz. tai: „tai yra komandų eilutės atidarymas. Kai koduoju daug kartų, tai padarysiu, kad prisiminčiau, ką padariau vėliau, kai į tai žiūriu. Scenarijus tiesiog ignoruoja šią eilutę ir juda toliau. Jei matote juos, galite padaryti tą patį.

5 veiksmas: 2 veiksmas: laikmačių nustatymas

2 veiksmas: laikmačių nustatymas
2 veiksmas: laikmačių nustatymas

Gerai, dabar, kai turime nuostabų naują langą, turime jį užpildyti komandomis, kad galėtume padaryti tai, ko norime. Problema ta, kad kai kurie kompiuteriai ilgiau nei kiti atidaro langus, todėl norime, kad scenarijus šiek tiek palauktų šiek tiek pradėti. jei jis prasideda per anksti, kompiuteris užpildys tuščią vietą prieš jums atidarius langą ir gausite dalinę komandą arba jos nebus. Taigi turime nustatyti laikmatį. Norėdami tai padaryti, mes įvedame: wscript.sleep 200Ką tai daro: jis nurodo scenarijui palaukti X laiko prieš vykdant kitą komandą. 1000 prilygsta vienai sekundei, taigi mano laukia penktadalis sekundės. Galite pastebėti, kad jūsų kompiuteris turi laukti daugiau ar mažiau laiko. Jei žiūrite kompiuterį ir jis neteisingai įveda komandas, pakeiskite skaičių į didesnį, pvz., 2000, tai būtų 2 sekundės ir tikriausiai daug laiko. Išsaugokite failą dabar, šiuo metu jūsų kodas turėtų būti toks: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200

6 veiksmas: 3 žingsnis: sukurkite paveikslėlį

3 žingsnis: sukurkite paveikslėlį
3 žingsnis: sukurkite paveikslėlį

Aš ką tik atidariau dažus ir įvedžiau „Internet Disconected“ir padariau 800x600, išsaugojau kaip id.bmp ir išsaugojau savo šakniniame kataloge, mano atveju k: / bet jūsų tikriausiai bus c:

7 žingsnis: 4 žingsnis: komandų siuntimas, paveikslėlio atidarymas

4 žingsnis: komandų siuntimas, paveikslėlio atidarymas
4 žingsnis: komandų siuntimas, paveikslėlio atidarymas

Gerai dabar, kai turime komandų langą, laukiantį komandų, viskas, ką turime padaryti, tai įvesti komandas į langą naudodami komandą sendkeys. Kai naudojame komandą „sendkeys“, tai panašu į rašymą, bet ji įves viską, ką norime įvesti. Viskas, ką galime įvesti, galime išsiųsti, įskaitant įvesties klavišus, reikalingus programoms vykdyti. Dabar, kai žinome, kaip siųsti raktus, galima atidaryti ką tik sukurtą paveikslėlį, tada įdėti kitą laikmačio antrinį žodį, kad jis suteiktų laiko įkelti paveikslėlį. Norėdami tai padaryti, įvedame: shellobj.sendkeys "k: / id.bmp {enter}" wscript.sleep 200Ką tai daro: Tai tas pats, kas įvesti lauką k: / id.bmp. Tai turėtų atidaryti jūsų paveikslėlį numatytajame vaizdo peržiūros programoje, kad būtų galima gauti BPM … mano atveju tai yra „Windows“paveikslėlių ir fakso peržiūros priemonė, tačiau dauguma žmonių taip pat įdiegia po rinkos programas, kurios taip pat daro, todėl kas žino, kas bus atidaryta. Dabar išsaugokite failą ir paleiskite jį. Turėtumėte gauti komandų eilutę ir pasirodyti paveikslėlį. kol kas viskas gerai !!! jūsų kodas iki šiol turėtų būti toks: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "k: / id.bmp {enter}" wscript. miegoti 200

8 veiksmas: 5 veiksmas: komandų siuntimas, išjunkite internetą

5 veiksmas: komandų siuntimas, išjunkite internetą
5 veiksmas: komandų siuntimas, išjunkite internetą

Šiuo metu, jei to dar nepadarėte, atsisiųskite pdf failą pabaigoje, taigi, jei sugadinsite, atsisiųsite „Instructable“, kaip tai išspręsti. Dabar čia prasideda linksmybės. Gerai, todėl mes naudosime „ipconfig“, kad išleistume savo IP adresą. Be IP adreso negalime gauti jokio interneto srauto, nes maršrutizatorius nežino, kur jį siųsti į kompiuterį. Norėdami tai padaryti, įvedame: shellobj.sendkeys "ipconfig /release {enter}" Ką tai daro: Tai nurodo programai IPCONFIG išleisti IP adresą. {enter} nurodo kompiuteriui, kad paspaudėte įvesties klavišą. tai būtų kaip įvesti langą ipconfig /release ir paspausti enter. Paprastai po to, kai tai padarysite, jei paleisite „ipconfig“, jis jums pasakys, kad jūsų IP adresas yra 0.0.0.0 To mes norime. Be IP adreso maršrutizatorius nežino, kad mes čia, ir jokia programa negali taip sakant „paskambinti“. Dabar, kai sėkmingai baigėme išjungti IP, norime uždaryti langą. Dabar galėtume parašyti kitą eilutę, kurioje sakoma: shellobj.sendkeys "exit {enter}" Bet būtų paprasčiau tiesiog redaguoti aukščiau pateiktą eilutę ir pridėti ją prie pabaigos, kad turėtumėte: shellobj.sendkeys "ipconfig /release {enter} exit {enter} „Dabar išsaugokite, bet nepaleiskite, nes išjungsite interneto ryšį. Jei jį paleisite ir jūsų internetas išsijungs, tiesiog pakeiskite jungiklį iš „ipconfig /release“į „ipconfig /atnauj“ir paleiskite jį dar kartą, ir jis turėtų vėl jį įjungti. Ir jei visa kita nepavyks, paleiskite iš naujo ir jums turėtų būti gerai. Jūsų kodas iki šiol turėtų būti toks: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "k: / id.bmp { enter} "wscript.sleep 200shellobj.sendkeys" ipconfig /release {enter} išeiti {enter} “

9 veiksmas: 6 veiksmas: pranešimų dėžutės kūrimas ir atsakymo laukimas

6 veiksmas: sukurkite pranešimų laukelį ir laukite atsakymo
6 veiksmas: sukurkite pranešimų laukelį ir laukite atsakymo

Gerai, dabar, kai sėkmingai išjungėme internetą ir uždarėme komandų eilutės langą, norime, kad pasirodytų pranešimų langas, kuriame būtų klausiama, ar norime vėl įjungti internetą. Bet čia yra sudėtinga, norime palaukti taip, bet jei spustelėsime ne, mes nenorime, kad jis išnyktų, todėl tam naudosime teiginį „while“. Pirmiausia turime nustatyti pranešimų dėžutės kintamąjį, kad galėtume priskirti jam kintamuosius. Žinau, kad tai skamba painiai, bet taip nėra. mes tai jau padarėme vieną kartą su eilute: set shellobj = CreateObject ("WScript. Shell") tai dar lengviau nustatyti, mes tiesiog įvedame: Dim MyVar Ką tai daro: Dabar mes nustatėme kintamąjį MyVar /ne "pranešimų langas pasirodo jūsų ekrane ir spustelite mygtukus, kurie kiekvienam mygtukui priskiria vertę, šiuo atveju" taip "yra 1, o" ne "yra 2. Mes norime, kad kintamasis prasidėtų" ne "Taigi pagal numatytuosius nustatymus priskiriame jam skaičių 2, tokiu būdu jis pristabdomas, kol paspaudžiamas mygtukas. Norėdami tai padaryti, rašome: myvar = 2 Ką tai daro: dabar „MyVar“yra lygus 2, tokiu būdu kitoje eilutėje jis sustos ir lauks įvesties. Dabar mes tiesiog norime, kad jis ten sėdėtų ir lauktų, kol būsime pasirengę vėl įjungti internetą. Norėdami tai padaryti, mes įvedame: o myvar = 2 Ką tai daro: tai darydami mes pasakėme scenarijui, kad tol, kol myvar vertė = 2, tada tiesiog kartokite pranešimų dėžutę, kol gausime bet kokią kitą reikšmę nei 2, kuri šiuo atveju gali būti tik 1. Tada mes iš tikrųjų norime, kad pranešimų langas pasirodytų su mygtukais „taip“/„ne“. tai mes įvedame: MyVar = MsgBox („Įjungti interneto ryšį“, 65, „Įjungti interneto ryšį“) Ką tai daro: Dabar kintamajam „MyVar“bus priskirta bet kokia reikšmė, priskirta mygtukui, kuris yra spustelėtas pranešimų laukelyje. pirmoji kabučių dalis yra tai, ką iš tikrųjų pasakys pranešimų dėžutė. 65 priskiria jį „Taip/Ne“pranešimų dėžutei. paskutinė kabučių dalis yra pranešimų dėžutės dalis. norėdami patikrinti, kokią vertę jis priskiria spustelėjus „taip“arba „ne“, galite pridėti eilutėje, kurioje rašoma „msgbox“(„myVar“), ir ji atspausdins bet kokią „myvar“priskiriamą vertę pranešimų dėžutė. dabar, kad turime pranešimų dėžutę, turime uždaryti teiginį „while“. Viskas, kas yra tarp „while“atidarymo ir uždarymo, bus vykdoma kiekvieną kartą, kai spustelėsite „ne“, nes jei spustelėsite „ne“, ji vis tiek bus 2 ir grįš į pirmąją dalį. Kad užbaigtumėte teiginio tipą „wendWhat it“daro: Kai baigsite kurį laiką sakinį, jis veiks kaip ciklas, kol argumentas nebebus įvykdytas. Taigi, jei ir toliau paspausite „ne“, jis pasikartos, bet kai paspausite „taip“, jis atsikratys ciklo ir tęsia scenarijų. Išsaugokite failą, bet palaukite, kol jis bus paleistas iki kito veiksmo. Jūsų kodas turėtų būti toks: 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 (" Įjungti interneto ryšį ", 65," Įjungti interneto ryšį ") wend

10 veiksmas: 7 veiksmas: vėl įjunkite internetą

7 veiksmas: vėl įjunkite internetą
7 veiksmas: vėl įjunkite internetą
7 veiksmas: vėl įjunkite internetą
7 veiksmas: vėl įjunkite internetą
7 veiksmas: vėl įjunkite internetą
7 veiksmas: vėl įjunkite internetą

Dabar, kai kas nors pagaliau spustelėjo „taip“ir praėjo teiginys, kai reikia, turime prisijungti prie interneto. Aš paprastai parodau patvirtinimą, kad galutinis vartotojas žinotų, kas vyksta, tačiau tai yra neprivaloma. Norėdami parodyti patvirtinimo tipą: msgbox ("Dabar mes vėl įjungsime interneto ryšį !!!") Ką tai daro: jis siunčia pranešimų laukelį, kuriame sakoma, kad mes vėl įjungsime interneto ryšį !!! ir suteikia jums mygtuką „Gerai“spustelėti. Dabar viskas, ką turime padaryti, tai vėl įjungti internetą ir viską uždaryti. Norėdami vėl įjungti internetą, tiesiog atidarome komandų eilutę, nustatome laikmatį, tada vėl naudojame „ipcionfig“. tipas: shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "ipconfig /atnaujinti {įveskite}" Ką jis daro: pakeičia ankstesnę komandą išjungti ir atnaujina jūsų IP adresą. Atnaujinę savo IP adresą, dabar galite vėl gauti interneto ryšį. Dabar viskas, ką turime padaryti, yra išvalyti atidarytus langus. Vėlgi galėtume naudoti komandą „sendkeys“, bet aš tiesiog pridėsiu paskutinę eilutę, kad taip pat būtų atlikti valymai. Šiuo atveju aš ketinu naudoti „Taskkill“programą, kad nužudyčiau programą, rodančią paveikslėlį. Šiuo atveju tai yra „Windows“paveikslėlių ir fakso peržiūros priemonė ir užduočių tvarkyklės skirtuke „Procesai“rodoma kaip „rundll32.exe“, todėl turime tai nužudyti. Jei jūsų paveikslėlis atidaromas naudojant kitą programą, pvz., „Irfanview“arba „acdsee“, suraskite pavadinimą, kurį jis naudoja, skirtuke „Procesai“ir pakeiskite „rundll32.exe“su jo pavadinimu. Komanda būtų tokia: taskkill /F /IM rundll32.exe daro: taskkill yra programos pavadinimas, kurią jungiklis /F nurodo priversti nužudyti, o /IM jungiklis nurodo vaizdo pavadinimą. Taigi dabar mes pridedame tai prie paskutinės eilutės, įveskite enter, kad įvykdytumėte komandą, tada exit komandą ir dar vieną įvestį ir atrodo taip: shellobj.sendkeys "ipconfig /atnaujinti {enter} taskkill /F /IM rundll32.exe {enter} exit {enter}" Išsaugoti failą.

11 žingsnis: paruoštas produktas

Galutinis produktas
Galutinis produktas

Jei viskas pavyko gerai, jūsų gatavas produktas turėtų atrodyti maždaug taip: 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 Nors myvar = 2MyVar = MsgBox ("Įjungti interneto ryšį", 65, "Įjungti interneto ryšį") wendmsgbox ("Mes dabar paversime internetą Ryšys vėl įjungtas !!! ") shellobj.run" cmd "wscript.sleep 200shellobj.sendkeys" ipconfig /atnaujinti {enter} taskkill /F /IM rundll32.exe {įeiti} išeiti {įvesti} "_skripto_pabaigos padaryta galite paleisti programą. Kas turėtų nutikti: 1.) CMD langas turėtų pasirodyti labai trumpą laiką, tada uždaryti2.) Jūsų internetas nebeveiks. 3. jūsų paveikslėlis turėtų būti atidarytas. 6. bet spustelėjus „Taip“, pranešimų langelis turėtų išnykti, o CMD langas turėtų būti rodomas atgal. 7.) Kai atnaujinamas IP adresas, CMD langas ir vaizdas turėtų užsidaryti. Čia tu jį turi. Labai lengvas VBscript įjungti ir išjungti internetą. Tikimės, kad jums patiks. Aš iš tikrųjų sukūriau kitą scenarijų, kuris yra beveik identiškas šiam, kuris išjungia tinklo adapterius naudodamas programą „DevCon“, kuri yra tarsi komandinės eilutės įrenginių tvarkyklė. Veikia tikrai gerai. Scenarijus yra identiškas šiam scenarijui, išskyrus atvejus, kai jame yra „ipconfig“, kuriame yra „DevCon“komandos.

Rekomenduojamas: