Obsah:

Úvod do skriptu VB: Průvodce pro začátečníky: 11 kroků
Úvod do skriptu VB: Průvodce pro začátečníky: 11 kroků

Video: Úvod do skriptu VB: Průvodce pro začátečníky: 11 kroků

Video: Úvod do skriptu VB: Průvodce pro začátečníky: 11 kroků
Video: Understanding My Artist Contract: Live Q & A | #BringYourWorth 351 2024, Listopad
Anonim
Úvod do skriptu VB: Průvodce pro začátečníky
Úvod do skriptu VB: Průvodce pro začátečníky

*** ((((UPOZORNĚNÍ: Přestože existuje mnoho kroků. Ve skutečnosti je to docela snadné. Jen jsem vše podrobně vysvětlil začátečníkům. Pokud chcete kód přeskočit na poslední krok a najdete celý kód tam.)))) *** Hraji hodně Xbox live a vždy musím vypnout internet v počítači, protože to omezuje šířku pásma. Především proto, že neustále stahuji nebo nahrávám věci. Problém není vypnout to, ale zase to zapnout, že jsem zapomněl, takže jsem se dostal tam, kde jsem ztratil veškerý čas nahrávání/stahování. Takže jsem se rozhodl vytvořit program, který to udělá za mě. Chtěl jsem to napsat na Vb.net, ale nedávno jsem musel atomizovat a připravit svůj operační systém na počítači kvůli špatné bouři, která smažila můj pevný disk, a zatím jsem přeinstaloval VB.net, takže jsem si myslel, že to bude dejte mi důvod hrát si s vbscript. Také jsem vytvořil obrázek v barvě, který se měl zobrazit na pozadí, takže jsem věděl, že běží.

Krok 1: Zjistěte, co chcete dělat

Zjistěte, co chcete dělat
Zjistěte, co chcete dělat

První věc, kterou vždy udělám, je vytvořit si plán. Co chci, aby program dělal? A) Chci mít možnost otevřít skript a automaticky vypne připojení. B) Chci, aby zobrazoval obří displej na pozadí, aby nedošlo k chybě, že je internet vypnutý, takže jej nezapomenu znovu zapnout. C) Chci, aby mi dal možnost jej zapnout znovu zapnout a pak čekat na odpověď. a poté zavře pozadí. F) Ukončete vše.

Krok 2: Věci, které používám, ale které ve skutečnosti nepotřebuji

Věci, které používám, ale opravdu nejsou potřeba
Věci, které používám, ale opravdu nejsou potřeba

Vše, co opravdu potřebujete, je textový editor jako poznámkový blok. Všechno ostatní je volitelné. Používám Poznámkový blok ++, když dělám skript VB, protože s ním zachází jako s vb.net s barvami a zná jazyk. Pomáhá vyhnout se chybám. Také čísluje řádky, takže můžete diagnostikovat, co je problém, když se zobrazí chybový kód. Lze jej získat zde Poznámkový blok ++

Krok 3: Spusťte programování

Spusťte programování
Spusťte programování

První věc, kterou musíte udělat, je vytvořit textový soubor a uložit jej na libovolné místo s příponou.vbsExample: NetworkShutOffScriptThatShutsOffTheInternetSoIcanPlayGamesOnMyXboxAndNotGetLag.vbsExample 2: games.vbs.vbs Obvykle to dělám na ploše, protože když na tom pracuji, otevřu to asi milionkrát. Nyní stačí kliknout pravým tlačítkem na soubor a stisknout upravit nebo upravit pomocí poznámkového bloku ++

Krok 4: Krok 1: Otevření okna příkazového řádku

Krok 1: Otevření okna příkazového řádku
Krok 1: Otevření okna příkazového řádku

Rozhodl jsem se tedy, že většinu práce udělám tak, že použiji programy již uložené v počítači a budu dělat, co chci. Méně kódování a žádné stahování … Woohoo. Easiest je příkazový řádek. Chceme tedy otevřít okno příkazového řádku, takže chceme vytvořit objekt, který zadáme takto: set shellobj = CreateObject ("WScript. Shell") Co to dělá: Nastavte instanci shellobj na stejnou, aby se vytvořil objekt s shellem skriptu. Tímto způsobem vše, co musíme udělat, je zadat shellobj místo CreateObject („WScript. Shell“) pokaždé, když potřebujeme nový příkaz. Nyní, když jsme vytvořili objekt, dáme pokyn objektu, aby otevřel okno příkazového řádku. Zadáme: shellobj.run "cmd" Co to dělá: To by bylo ekvivalentem psaní CMD do pole pro spuštění v nabídce Start. Pokud bychom nenastavili proměnnou shellobject, museli bychom zadat: CreateObject ("WScript. Shell"). Spustit "cmd" … podívejte se, jak je to nyní jednodušší. Méně prostoru pro chyby. Klikněte na soubor… poté na Uložit…, pak přejděte na plochu a dvakrát klikněte na soubor vbs, který jste vytvořili, aby se spustil. Pokud vše proběhne správně, měli byste zobrazit příkazový řádek systému Windows…..yaaaaaa !!! pokud není zaškrtnuto vaše kódování, zatím byste měli mít: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" Do svého skriptu můžete přidávat komentáře, abyste si pamatovali, co jste dělali později, vložením čárky před řádek jako this: 'this is to open a command prompt Když kóduji mnohokrát, udělám to, takže si pamatuji, co jsem udělal později, když se na to dívám. Skript tento řádek ignoruje a pokračuje dál. Pokud je uvidíte, můžete udělat to samé.

Krok 5: Krok 2: Nastavení časovačů

Krok 2: Nastavení časovačů
Krok 2: Nastavení časovačů

Dobře, teď, když máme nové nové okno, musíme ho naplnit příkazy, abychom ho mohli dělat, co chceme. Problém je v tom, že některým počítačům otevírání oken trvá déle než jiným, takže chceme, aby skript chvíli počkal trochu na začátek. pokud se spustí příliš brzy, počítač vyplní prázdné místo, než otevřete okno a vy buď dostanete částečný příkaz, nebo žádný, takže musíme nastavit časovač. Chcete -li to provést, zadejte: wscript.sleep 200 Co to dělá: Říká skriptu, aby počkal X dobu před provedením dalšího příkazu. 1000 se rovná jedné sekundě, takže moje čeká pětinu sekundy. Může se stát, že váš počítač bude muset čekat déle nebo méně. Pokud sledujete počítač a nezadává správně příkazy, změňte číslo na vyšší číslo, například 2 000 bude 2 sekundy a pravděpodobně dost času. Uložte soubor nyní, váš kód v tomto místě by měl být: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200

Krok 6: Krok 3: Vytvořte obrázek

Krok 3: Vytvořte obrázek
Krok 3: Vytvořte obrázek

Právě jsem otevřel malování a zadal do něj „Internet Disconected“a vytvořil jej 800x600 a uložil jej jako id.bmp a uložil do svého kořenového adresáře, v mém případě k: / ale váš bude pravděpodobně c:

Krok 7: Krok 4: Odesílání příkazů, otevření obrázku

Krok 4: Odesílání příkazů, otevření obrázku
Krok 4: Odesílání příkazů, otevření obrázku

Dobře, teď, když máme příkazové okno, které čeká na příkazy, vše, co musíme udělat, je zadat příkazy do okna pomocí příkazu sendkeys. Když použijeme příkaz sendkeys, je to jako psaní, ale napíše to, co chceme, aby napsal. Cokoli, co můžeme napsat, můžeme odeslat, včetně klíčů pro zadávání potřebných ke spouštění programů. Nyní víme, že jak poslat klíče, umožní otevřít náš obrázek, který jsme právě vytvořili, a poté vložíme další doslov časovače, aby měl obrázek čas na načtení. Za tímto účelem napíšeme: shellobj.sendkeys "k: / id.bmp {enter}" wscript.sleep 200 Co to udělá: Je to stejné, jako když do pole pro spuštění zadáte k: / id.bmp. Mělo by to otevřít váš obrázek ve výchozím prohlížeči obrázků pro bmp … v mém případě je to prohlížeč obrázků a faxů Windows, ale většina lidí instaluje programy po trhu, které to dělají také, takže kdo ví, v čem se otevře ten váš. Teď uložte svůj soubor a spusťte jej. Měli byste dostat příkazový řádek a obrázek, který se objeví. zatím dobrý !!! Váš dosavadní kód by měl být: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "k: / id.bmp {enter}" wscript. spát 200

Krok 8: Krok 5: Odesílání příkazů, vypnutí internetu

Krok 5: Odesílání příkazů, vypnutí internetu
Krok 5: Odesílání příkazů, vypnutí internetu

V tomto okamžiku, pokud jste tak dosud neučinili, stáhněte si soubor pdf na konci, takže pokud se pokazíte, máte stažený Instructable o tom, jak to opravit. Nyní začíná zábava. Dobře, takže k uvolnění naší IP adresy použijeme ipconfig. Bez IP adresy nemůžeme získat žádný internetový provoz, protože router neví, kam jej poslat do počítače. Chcete -li to provést, zadejte: shellobj.sendkeys "ipconfig /release {enter}" Co to udělá: Toto instruuje program IPCONFIG, aby uvolnil IP adresu. {enter} říká počítači, že jste stiskli klávesu Enter. to by bylo jako napsat ipconfig /release do okna běhu a stisknout Enter. Obvykle poté, co to provedete, pokud spustíte ipconfig, řekne vám, že vaše IP adresa je 0,0.0.0 To je to, co chceme. Bez IP adresy router neví, že jsme tady, a žádné programy se nemohou takříkajíc „vytočit“. Nyní, když jsme úspěšně ukončili vypínání IP, chceme zavřít okno. Nyní bychom mohli napsat další řádek, který říká: shellobj.sendkeys "exit {enter}" Ale bylo by jednodušší jednoduše upravit výše uvedený řádek a připojit jej na konec, abyste měli: shellobj.sendkeys "ipconfig /release {enter} exit {enter} „Nyní jej uložte, ale nespouštějte jej, protože vypnete připojení k internetu. Pokud jej spustíte a internet se vypne, změňte přepínač z ipconfig /release na ipconfig /renew a znovu jej spusťte a měl by ho znovu zapnout. A pokud vše ostatní selže, restartujte a měli byste být v pořádku. Váš kód by zatím měl být: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "k: / id.bmp { zadejte} "wscript.sleep 200shellobj.sendkeys" ipconfig /release {enter} exit {enter}"

Krok 9: Krok 6: Vytvoření schránky zpráv a čekání na odpověď

Krok 6: Vytvoření pole se zprávou a čekání na odpověď
Krok 6: Vytvoření pole se zprávou a čekání na odpověď

Dobře, teď, když jsme úspěšně vypnuli internet a zavřeli okno příkazového řádku, chceme, aby se objevilo okno se zprávou s dotazem, zda chceme internet znovu zapnout. Ale tady je to složité, chceme, aby to počkalo ano, ale pokud klikneme na ne, nechceme, aby zmizelo, takže k tomu použijeme příkaz while. Nejprve musíme dimenzovat proměnnou pro messgebox, abychom jí mohli přiřadit číselné proměnné. Vím, že to zní matoucí, ale ve skutečnosti to tak není. už jsme to jednou udělali s řádkem: set shellobj = CreateObject ("WScript. Shell") tento je ještě jednodušší jej nastavit jednoduše zadáme: Dim MyVarWhat to dělá: Nyní jsme okótovali proměnnou s názvem MyVarWhen dostanete "yes /no “na obrazovce se objeví okno se zprávou a kliknutím na tlačítka přiřadíte každému tlačítku hodnotu, v tomto případě„ ano “je 1 a„ ne “je 2. Chceme, aby proměnná začínala„ ne “ve výchozím nastavení mu přiřadíme číslo 2, tímto způsobem se pozastaví, dokud nekliknete na tlačítko. Chcete -li to provést, zadejte: myvar = 2 Co to dělá: nyní se MyVar rovná 2, tímto způsobem se v dalším řádku zastaví a čeká na zadání. Nyní jen chceme, aby tam seděl a čekal, až budeme připraveni znovu zapnout internet. K tomu zadáme: while myvar = 2 Co to dělá: Tímto způsobem jsme skriptu řekli, že dokud bude hodnota myvaru = 2, pak pokračujte ve smyčce schránky zpráv, dokud nezískáme jinou hodnotu než 2, což v tomto případě může být pouze 1. Další ve skutečnosti chceme, aby se okno se zprávou vyskočilo pomocí tlačítek ano/ne. toto zadáme: MyVar = MsgBox („Zapnout připojení k internetu“, 65, „Zapnout připojení k internetu“) Co to dělá: Nyní bude proměnné MyVar přiřazena jakákoli hodnota přiřazená tlačítku, na které se klikne v okně zprávy. první část v uvozovkách je to, co schránka zpráv vlastně řekne. 65 jej označuje jako schránku zpráv Ano/Ne. a poslední část v uvozovkách je laťka schránky zpráv. Chcete -li zjistit, jakou hodnotu přiřadí, když kliknete na ano nebo ne, můžete přidat řádek, který říká msgbox (myVar) a vytiskne jakoukoli hodnotu, která je přiřazena myvar v okno se zprávou. teď, že máme okno se zprávou, musíme zavřít příkaz while. Všechno, co je mezi otevřením a zavřením příkazu while, poběží pokaždé, když kliknete na ne, protože pokud kliknete na ne, bude to stále hodnota 2 a bude se opakovat první část. Chcete -li ukončit typ příkazu while: wendWhat it dělá: Jakmile ukončíte příkaz while, bude fungovat jako smyčka, dokud argument již nebude splněn. Pokud tedy budete pokračovat v trefování ne, bude se smyčka opakovat, ale jakmile stisknete ano, vymaže se ze smyčky a bude pokračovat ve skriptu. Uložte soubor, ale počkejte na jeho spuštění do dalšího kroku. Váš dosavadní kód by měl být: set shellobj = CreateObject ("WScript. Shell") shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "k: / id.bmp { zadejte} "wscript.sleep 200shellobj.sendkeys" ipconfig /release {enter} exit {enter} "Dim MyVarmyvar = 2 while myvar = 2MyVar = MsgBox (" Zapnout připojení k internetu ", 65," Zapnout připojení k internetu ") wend

Krok 10: Krok 7: Zapnutí internetu zpět

Krok 7: Znovu zapněte internet
Krok 7: Znovu zapněte internet
Krok 7: Znovu zapněte internet
Krok 7: Znovu zapněte internet
Krok 7: Znovu zapněte internet
Krok 7: Znovu zapněte internet

Nyní, když někdo konečně klikl na ano a prošlo to příkazem while, musíme urnovat na internetu. Obvykle vyskočím potvrzení, takže koncový uživatel ví, co se děje, ale je to čistě volitelné. Chcete -li zobrazit typ potvrzení: msgbox („Nyní znovu zapneme připojení k internetu !!!“) Co to udělá: odešle okno se zprávou, že nyní znovu zapneme připojení k internetu !!! a dá vám tlačítko OK na kliknutí. Nyní stačí jen znovu zapnout internet a zavřít vše. Chcete -li internet znovu zapnout, stačí otevřít příkazový řádek, nastavit časovač a poté znovu použít ipcionfig. typ: shellobj.run "cmd" wscript.sleep 200shellobj.sendkeys "ipconfig /renew {enter}" Co to dělá: vrátí předchozí příkaz k vypnutí a obnoví vaši IP adresu. Jakmile obnovíte svou IP adresu, můžete nyní znovu získat připojení k internetu. Nyní musíme pouze vyčistit otevřená okna. Znovu bychom mohli použít příkaz sendkeys, ale já jen připojím poslední řádek, který také provede vyčištění. V tomto případě použiji program taskkill, abych zabil program zobrazující obrázek. V tomto případě je to prohlížeč obrázků a faxů systému Windows a zobrazuje se jako rundll32.exe na kartě procesů správce úloh, takže to potřebujeme zabít. Pokud se váš obrázek otevře pomocí jiného programu, jako je irfanview nebo acdsee, najděte na kartě procesů jeho název a umístěte soubor rundll32.exe pod název, který najdete. Příkaz by byl: taskkill /F /IM rundll32.exe Co to je dělá: taskkill je název programu, přepínač /F mu řekne, aby vynutil zabití, a přepínač /IM mu řekne název obrázku. Takže teď to připojíme k poslednímu řádku, přidejte Enter pro provedení příkazu a poté exit příkaz a další enter a vypadá to takto: shellobj.sendkeys "ipconfig /renew {enter} taskkill /F /IM rundll32.exe {enter} exit {enter}" Uložte soubor.

Krok 11: Hotový výrobek

Dokončený produkt
Dokončený produkt

Pokud vše proběhlo správně, váš hotový produkt by měl vypadat nějak takto: 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 ("Turn on internet connection", 65, "Turn On Internet Connection") wendmsgbox ("We will now Turn the Internet Připojení zpět !!! ") shellobj.run" cmd "wscript.sleep 200shellobj.sendkeys" ipconfig /renew {enter} taskkill /F /IM rundll32.exe {enter} exit {enter} "_end of script_Now that the programming is hotovo, můžete spustit program. Co by se mělo stát: 1.) Měli byste na krátkou dobu vyskočit okno CMD a poté zavřít 2.) Váš internet by již neměl fungovat. ale neuvidíte to 3.) Váš obrázek by se měl otevřít. znovu se zeptáte, zda chcete znovu zapnout internet. 6.) Jakmile kliknete na Ano, okno se zprávou by mělo zmizet a mělo by se zobrazit okno CMD 7.) Po obnovení IP adresy se okno CMD a obrázek měli byste zavřít. Tady to máte. Velmi snadný VBscript pro zapnutí a vypnutí internetu. Doufám, že se vám to líbí. Vlastně jsem vytvořil další skript, který je téměř identický s tímto, který vypíná síťové adaptéry pomocí programu s názvem DevCon, který je jako správce zařízení příkazového řádku. Funguje opravdu dobře. Skript je identický s tímto, kromě případů, kdy v tomto má commadns pro ipconfig, že má příkazy pro DevCon.

Doporučuje: