Tartalomjegyzék:

A VB Script bevezetője: a kezdőknek szóló útmutató: 11 lépés
A VB Script bevezetője: a kezdőknek szóló útmutató: 11 lépés

Videó: A VB Script bevezetője: a kezdőknek szóló útmutató: 11 lépés

Videó: A VB Script bevezetője: a kezdőknek szóló útmutató: 11 lépés
Videó: VBS Script programozásHUN 2024, December
Anonim
A VB Script bevezetője: kezdőknek szóló útmutató
A VB Script bevezetője: kezdőknek szóló útmutató

***** kódot.)))) *** Rengeteg Xbox -ot játszok élőben, és mindig le kell tiltanom az internetet a számítógépemen, mert túlterheli a sávszélességet. Főleg azért, mert folyamatosan töltök le vagy töltök fel dolgokat. A probléma nem a kikapcsolás, hanem visszakapcsolás, amit elfelejtek, és oda jutok, ahol elveszítem a feltöltési/letöltési időt. Ezért úgy döntöttem, hogy létrehozok egy programot, amely ezt elvégzi helyettem. A Vb.net -be akartam írni, de a közelmúltban kénytelen voltam nukleáris és nukleáris operációs rendszert futtatni a számítógépen, mert a vihar megsütötte a merevlemezem, és még nem telepítettem újra a VB.net -et, így csak arra gondoltam, hogy ez adj okot a vbscript -szel való játékra. Készítettem egy festett képet is a háttérben való megjelenítéshez, így tudtam, hogy fut.

1. lépés: Találd ki, mit szeretnél csinálni

Találd ki, mit akarsz csinálni
Találd ki, mit akarsz csinálni

Az első dolog, amit mindig csinálok, egy terv készítése. Mit szeretnék, hogy a program tegyen? A) Szeretném megnyitni a szkriptet, és automatikusan leállítja a kapcsolatot. B) Azt akarom, hogy egy óriási kijelző jelenjen meg a háttérben, így nincs hiba, hogy az internet ki van kapcsolva, így nem felejtem el újra bekapcsolni. C) Azt akarom, hogy választhasson kapcsolja be, majd várja meg a választ. majd bezárja a hátteret. F) Lépjen ki mindenből.

2. lépés: Olyan dolgok, amelyeket használok, de nem igazán szükségesek

Dolgok, amelyeket használok, de nem igazán szükséges
Dolgok, amelyeket használok, de nem igazán szükséges

Valójában csak egy szövegszerkesztőre van szüksége, mint a jegyzettömb. Minden más opcionális. A Notepad ++ -t használom, amikor VB -szkriptet csinálok, mert úgy kezeli, mint a vb.net a színekkel és ismeri a nyelvet. Segít elkerülni a hibákat. Ez is számozza a sorokat, így diagnosztizálhatja, mi a probléma, amikor hibakódot kap. Innen kapható jegyzettömb ++

3. lépés: Indítsa el a programozást

Indítsa el a programozást
Indítsa el a programozást

Nos, az első dolog, amit meg kell tennie, hogy létrehoz egy szöveges fájlt, és elmenti a kívánt névre a.vbs fájlkiterjesztéssel. Példa: NetworkShutOffScriptThatShutsOffTheInternetSoIcanPlayGamesOnMyXboxAndNotGetLag.vbsPélda 2: games.vbs A fájlnév mindegy. Általában ezt az asztalon teszem, mert körülbelül zillió alkalommal nyitom meg, amíg dolgozom rajta. Most kattintson a jobb gombbal a fájlra, és nyomja meg a szerkesztés vagy szerkesztés jegyzettömb ++ billentyűt

4. lépés: 1. lépés: Parancssori ablak megnyitása

Lépés: Nyissa meg a parancssori ablakot
Lépés: Nyissa meg a parancssori ablakot

Ezért úgy döntöttem, hogy a munka nagy részét elvégezem, és csak a számítógépen tárolt programokat használom arra, amit akarok. Kevesebb kódolás és letöltések nélkül: Állítsa be a shellobj példányát egyenlővé a w script shell objektum létrehozásához. Így csak annyit kell tennünk, hogy a CreateObject ("WScript. Shell") helyett a shellobj parancsot írjuk be minden alkalommal, amikor új parancsra van szükségünk. Most, hogy létrehoztunk egy objektumot, utasítjuk az objektumot, hogy nyisson meg egy parancssori ablakot. shellobj.run "cmd" Működése: Ez megegyezne azzal, hogy beírja a CMD -t a Start menü futtatási mezőjébe. Ha nem állítottuk be a shellobject változót, akkor be kellett volna írnunk: CreateObject ("WScript. Shell"). Futtassuk a "cmd" -t … nézzük meg, mennyivel egyszerűbb ez most. Kevesebb hely a hibákhoz. Kattintson a fájlra, majd a Mentés gombra, majd lépjen az asztalra, és kattintson duplán a vbsfile fájlra, amelyet futtatnia kell. Ha minden rendben van, akkor egy Windows parancssort kell megjelenítenie…..aaaaaaaa !!! ha nem, ellenőrizze a kódolásod, eddig a következőket kell tenned: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" Hozzáadhatsz megjegyzéseket a szkripthez, hogy később emlékezz vissza arra, amit tettél, vesszőt helyezve a sor elé, mint pl. ez: 'ez egy parancssor megnyitása. Amikor sokszor kódolok, ezt fogom tenni, így emlékezni fogok arra, amit később tettem, amikor megnéztem. A szkript csak figyelmen kívül hagyja ezt a sort, és továbblép. Ha látod őket, te is megteheted.

5. lépés: 2. lépés: Az időzítők beállítása

2. lépés: Az időzítők beállítása
2. lépés: Az időzítők beállítása

Rendben, most, amikor van egy új ablakunk, parancsokkal kell kitöltenünk, hogy azt tegyük, amit akarunk. A probléma az, hogy egyes számítógépeknél hosszabb ideig tart, amíg mások megnyitják az ablakokat, ezért szeretnénk, ha a szkript várjon egy kicsit. kicsit kezdeni. ha túl korán indul, a számítógép kitölti az üres mezőt, mielőtt kinyitja az ablakot, és vagy részleges parancsot kap, vagy egyáltalán nem. Tehát időzítőt kell beállítanunk. Ehhez be kell írnunk: wscript.sleep 200Mit csinál: Azt mondja a szkriptnek, hogy várjon X -et a következő parancs végrehajtása előtt. 1000 egyenlő egy másodperccel, így az enyém egyötöd másodpercet vár. Előfordulhat, hogy a számítógépnek több vagy kevesebb időt kell várnia. Ha figyeli a számítógépet, és nem írja be helyesen a parancsokat, változtassa meg a számot egy magasabb számra, például 2000 2 másodperc és valószínűleg sok idő. Mentse el a fájlt most, a kódnak a következőnek kell lennie: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200

6. lépés: 3. lépés: Készítsen képet

3. lépés: Készítsen képet
3. lépés: Készítsen képet

Most nyitottam meg a festéket, és beírtam az "Internet Disconected" -t, és 800x600 -as méretűvé tettem, és elmentettem id.bmp néven, és elmentettem a gyökérkönyvtárba, az én esetemben k: / de a tiéd valószínűleg a c:

7. lépés: 4. lépés: Parancsok küldése, a kép megnyitása

4. lépés: Parancsok küldése, a kép megnyitása
4. lépés: Parancsok küldése, a kép megnyitása

Rendben, most, hogy van egy parancsablakunk, amely a parancsokra vár, mindössze annyit kell tennünk, hogy beírjuk a parancsokat az ablakba a sendkeys paranccsal. Amikor a sendkeys parancsot használjuk, ez olyan, mint a gépelés, de azt írja be, amit be akarunk írni. Bármit, amit beírhatunk, elküldhetünk, beleértve a programok végrehajtásához szükséges enter billentyűket is. Most, hogy tudjuk, hogyan kell kulcsokat küldeni, megnyitjuk az imént készített képünket, majd behelyezünk egy másik időzítő utószót, hogy a kép betöltődjön. Ehhez be kell írnunk: shellobj.sendkeys "k: / id.bmp {enter}" wscript.sleep 200Mit tesz: Ez ugyanaz, mint ha beírja a k: / id.bmp fájlt a futtatási mezőbe. Meg kell nyitnia a képet az alapértelmezett képnézegetőben egy bmp -hez … az én esetemben ez a Windows kép- és faxnézegető, de a legtöbb ember telepíti azokat a piaci programokat, amelyek ezt is megteszik, így ki tudja, mi nyílik meg a tiédben. Most mentse el a fájlt és futtassa. Meg kell kapnia egy parancssort és egy képet, amely felbukkan. eddig jó !!! az eddigi kódod legyen: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "k: / id.bmp {enter}" wscript. aludj 200

8. lépés: 5. lépés: Parancsok küldése, kapcsolja ki az internetet

5. lépés: Parancsok küldése, kapcsolja ki az internetet
5. lépés: Parancsok küldése, kapcsolja ki az internetet

Ezen a ponton, ha még nem tette meg, töltse le a pdf fájlt a végén, így ha elrontja, letöltött egy Instructable -t a javításhoz. Most itt kezdődik a szórakozás. Rendben, tehát az ipconfig segítségével fogjuk kiadni IP -címünket. IP -cím nélkül nem érhetünk el internetes forgalmat, mert az útválasztó nem tudja, hová küldje a számítógépre. Ehhez be kell írnunk: shellobj.sendkeys "ipconfig /release {enter}" Teendő: Ez utasítja az IPCONFIG programot az IP -cím felszabadítására. az {enter} azt mondja a számítógépnek, hogy megnyomta az enter billentyűt. ez olyan, mintha az ipconfig /release parancsot beírnánk a futtatóablakba, és megnyomnánk az enter billentyűt. Általában ezt követően, ha futtatja az ipconfig programot, azt fogja mondani, hogy az IP -címe 0.0.0.0 Ezt akarjuk. IP -cím nélkül az útválasztó nem tudja, hogy itt vagyunk, és egyetlen program sem tud úgymond "tárcsázni". Most, hogy sikeresen befejeztük az IP lekapcsolását, be akarjuk zárni az ablakot. Most írhatnánk egy másik sort, amely így szól: shellobj.sendkeys "exit {enter}" De egyszerűbb lenne csak szerkeszteni a fenti sort, és a végéhez fűzni, hogy legyen: shellobj.sendkeys "ipconfig /release {enter} exit {enter} "Most mentse el, de ne futtassa, mert lekapcsolja az internetkapcsolatot. Ha mégis futtatja, és az internet kikapcsol, csak váltsa át a kapcsolót az ipconfig /release -ről az ipconfig /atnauj -re, és futtassa újra, és újra be kell kapcsolnia. És ha minden más nem sikerül, akkor indítsa újra, és rendben kell lennie. Az eddigi kódja a következő legyen: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "k: / id.bmp { enter} "wscript.sleep 200shellobj.sendkeys" ipconfig /release {enter} kilépés {enter}"

9. lépés: 6. lépés: Üzenetdoboz létrehozása és válaszra várva

6. lépés: Üzenetdoboz létrehozása és válaszra várva
6. lépés: Üzenetdoboz létrehozása és válaszra várva

Oké, most, hogy sikeresen lezártuk az internetet és bezártuk a parancssori ablakot, szeretnénk, ha megjelenik egy üzenetdoboz, amely megkérdezi, szeretnénk -e újra bekapcsolni az internetet. De itt bonyolult lesz, szeretnénk, ha várjon igen, de ha nemre kattintunk, nem akarjuk, hogy eltűnjön, ezért ezt a while utasítással fogjuk használni. Először meg kell méreteznünk egy változót a Messagebox számára, hogy hozzá tudjunk rendelni számváltozókat. Tudom, hogy zavarosan hangzik, de valójában nem az. ezt már egyszer megcsináltuk a következő sorral: set shellobj = CreateObject ("WScript. Shell") ez még könnyebben beállítható csak beírjuk: Dim MyVarMit csinál: Most méreteztünk egy MyVar nevű változót /no "üzenetmező jelenik meg a képernyőn, és rákattint a gombokra, amelyek értéket rendelnek minden gombhoz, ebben az esetben az" igen "1, a" nem "pedig 2. Szeretnénk, ha a változó" nem "-vel kezdődne alapértelmezés szerint a 2 -es számot rendeljük hozzá, így megáll, amíg egy gombra nem kattint. Ehhez beírjuk: myvar = 2Mit csinál: most a MyVar egyenlő 2 -vel, így a következő sorban leáll, és várja a bevitelt. Most csak azt akarjuk, hogy ott üljön, és várjon, amíg készen állunk arra, hogy újra bekapcsoljuk az internetet. Ehhez beírjuk: míg myvar = 2 Mit csinál: Ezzel elmondtuk a forgatókönyvnek, hogy amíg a myvar értéke = 2, majd folytassa az üzenetládát addig, amíg 2 -től eltérő értéket nem kapunk, ami ebben az esetben csak 1 lehet. Ezután valójában azt szeretnénk, hogy egy üzenet/ablak jelenik meg az igen/nem gombokkal. ezt írjuk be: MyVar = MsgBox ("Internetkapcsolat bekapcsolása", 65, "Internetkapcsolat bekapcsolása") Működése: Most a MyVar változó hozzárendelődik ahhoz az értékhez, amelyet az üzenetmezőre kattintott gombhoz rendelnek. az idézetek első része az, amit az üzenetdoboz valójában mondani fog. A 65 jelöli Igen/Nem üzenetládának. és az idézőjelek utolsó része az üzenetdoboz lable. hogy ellenőrizze, hogy milyen értéket rendel hozzá, ha az igen vagy a nem gombra kattint, hozzáadhat egy sort az msgbox (myVar) szöveghez, és kinyomtatja a myvarhoz rendelt értékeket egy üzenetdoboz. most, hogy van egy üzenetdobozunk, be kell zárnunk a while utasítást. Minden, ami a while megnyitás és zárás között van, minden alkalommal le fog futni, amikor a nem gombra kattint, mert ha a nem gombra kattint, az még mindig 2 érték, és visszatér az első részhez. A while utasítás típusának befejezéséhez: wendWhat nem: Miután véget vetett egy while utasításnak, ciklikusan fog működni, amíg az argumentum már nem teljesül. Tehát ha továbbra is nemet üt, akkor ciklus lesz, de ha igen, akkor megszabadul a huroktól, és folytatja a szkriptet. Mentse el a fájlt, de várja meg a futtatását a következő lépésig. Eddig a kódnak kell lennie: 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 (" Internetkapcsolat bekapcsolása ", 65," Internetkapcsolat bekapcsolása ") wend

10. lépés: 7. lépés: Az internet visszakapcsolása

7. lépés: Az internet visszakapcsolása
7. lépés: Az internet visszakapcsolása
7. lépés: Az internet visszakapcsolása
7. lépés: Az internet visszakapcsolása
7. lépés: Az internet visszakapcsolása
7. lépés: Az internet visszakapcsolása

Most, hogy valaki végre rákattintott az igenre, és eltelt a while kijelentés, be kell jelentkeznünk az internetre. Általában megerősítést kérek, hogy a végfelhasználó tudja, mi történik, de ez nem kötelező. Egy megerősítő típus felbukkanásához: msgbox ("Most újra bekapcsoljuk az internetkapcsolatot !!!") Mi a teendő: egy üzenetdobozt küld, amely azt írja, hogy Most újra bekapcsoljuk az internetkapcsolatot !!! és megad egy OK gombot a kattintáshoz. Most már csak annyit kell tennünk, hogy újra bekapcsoljuk az internetet, és bezárunk mindent. Az internet visszakapcsolásához csak megnyitunk egy parancssort, állítsuk be az időzítőt, majd használjuk újra az ipcionfig parancsot. típus: shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "ipconfig /atnauj {enter}" Mit tesz: visszafordítja a korábbi kikapcsolási parancsot, és megújítja az IP -címet. Miután megújította az IP -címét, most újra hozzáférhet az internethez. Most már csak a nyitott ablakokat kell megtisztítanunk. Ismét használhatnánk egy sendkeys parancsot, de csak az utolsó sort fűzöm hozzá a tisztítások végrehajtásához. Ebben az esetben a Taskkill programmal fogom megölni a képet megjelenítő programot. Ebben az esetben ez a Windows kép- és faxnézegető, és rundll32.exe néven jelenik meg a feladatkezelő folyamatok lapján, így meg kell ölnünk. Ha a kép más programmal, például irfanview -val vagy acdsee -vel nyílik meg, keresse meg a nevét a folyamatok lapon, és cserélje ki az rundll32.exe fájlt a megtalált névvel. A parancs a következő lenne: taskkill /F /IM rundll32.exe nem: a taskkill annak a programnak a neve, amelyet az /F kapcsoló utasít, hogy erőltesse az öldöklést, és a /IM kapcsoló mondja meg a kép nevét. exit parancs és egy másik enter, és így néz ki: shellobj.sendkeys "ipconfig /uuendás {enter} taskkill /F /IM rundll32.exe {enter} exit {enter}" Mentse el a fájlt.

11. lépés: Késztermék

Késztermék
Késztermék

Ha minden rendben ment, a készterméknek valahogy így kell kinéznie: 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 ("Internetkapcsolat bekapcsolása", 65, "Internetkapcsolat bekapcsolása") wendmsgbox ("Most bekapcsoljuk az internetet A kapcsolat újra bekapcsolva! Ha elkészült, futtathatja a programot. Mi történjen: 1.) Meg kell kapnia a CMD ablakot egy nagyon rövid időre, majd bezárni2.) Az internetnek többé nem kell működnie. 3.) A képednek meg kell nyílnia. 6.)) Ha az Igen gombra kattint, az üzenetmező eltűnik, és megjelenik egy CMD ablak. 7.) Az IP -cím megújítása után a CMD ablak és a kép be kell zárnia. Ott van. Egy nagyon egyszerű VBscript az internet be- és kikapcsolásához. Remélem tetszik. Valójában készítettem egy másik szkriptet, amely majdnem azonos ezzel, amely kikapcsolja a hálózati adaptereket a DevCon nevű program segítségével, amely olyan, mint egy parancssori eszközkezelő. Valóban jól működik. A szkript azonos ezzel a szkripttel, kivéve, ha ebben a Commadns for ipconfig parancs van a DevCon számára.

Ajánlott: