Inhaltsverzeichnis:

Einführung in VB Script: ein Anfängerleitfaden - Gunook
Einführung in VB Script: ein Anfängerleitfaden - Gunook

Video: Einführung in VB Script: ein Anfängerleitfaden - Gunook

Video: Einführung in VB Script: ein Anfängerleitfaden - Gunook
Video: Aktivieren Sie Entwickler -Tools in Chrome | console.log nicht ausgibt | Undefined Tag 2024, November
Anonim
Einführung in VB Script: ein Anfängerleitfaden
Einführung in VB Script: ein Anfängerleitfaden

* Code dort.))))*** Ich spiele viel Xbox Live und muss immer das Internet auf meinem Computer deaktivieren, weil es Bandbreite in Anspruch nimmt. Hauptsächlich, weil ich ständig Dinge herunter- oder hochlade. Das Problem besteht nicht darin, es auszuschalten, sondern es wieder einzuschalten, was ich vergesse und es zu dem Punkt bringt, wo ich all die Upload- / Download-Zeit verliere. Also beschloss ich, ein Programm zu erstellen, das es für mich erledigt. Ich wollte es in Vb.net schreiben, aber ich musste erst vor kurzem mein Betriebssystem auf meinem Computer atomisieren und ebnen, weil ein schlimmer Sturm meine Festplatte brannte, und habe VB.net noch nicht neu installiert, also dachte ich mir, dass dies der Fall wäre Geben Sie mir einen Grund, mit vbscript zu spielen. Ich habe auch ein Bild in Farbe erstellt, das im Hintergrund angezeigt wird, damit ich wusste, dass es läuft.

Schritt 1: Finden Sie heraus, was Sie tun möchten

Überlegen Sie, was Sie tun möchten
Überlegen Sie, was Sie tun möchten

Als erstes mache ich immer einen Plan. Was soll das Programm tun? A) Ich möchte das Skript öffnen können und die Verbindung wird automatisch beendet. B) Ich möchte, dass im Hintergrund ein riesiges Display angezeigt wird, damit es keinen Fehler gibt, dass das Internet ausgeschaltet ist. Auf diese Weise vergesse ich nicht, es wieder einzuschalten. C) Ich möchte, dass ich die Wahl habe, es einzuschalten wieder einschalten und dann auf eine Antwort warten. D) Ich möchte, dass es sicherstellt, dass ich es wieder einschalte, damit ich es nicht vergesse. E) Wenn ich dann tatsächlich Ja sage, um es wieder einzuschalten, schaltet das Skript es wieder ein und schließt dann den Hintergrund. F) Beenden Sie alles.

Schritt 2: Dinge, die ich verwende, aber nicht wirklich brauche

Dinge, die ich benutze, aber nicht wirklich brauche
Dinge, die ich benutze, aber nicht wirklich brauche

Alles, was Sie wirklich brauchen, ist ein Texteditor wie Notepad. Alles andere ist optional. Ich verwende Notepad ++, wenn ich VB-Skript erstelle, weil es es wie vb.net mit Farben behandelt und die Sprache kennt. Es hilft, Fehler zu vermeiden. Es nummeriert auch die Zeilen, damit Sie diagnostizieren können, was das Problem ist, wenn Sie einen Fehlercode erhalten

Schritt 3: Starten Sie die Programmierung

Programmierung starten
Programmierung starten

Nun, das erste, was Sie tun möchten, ist eine Textdatei zu erstellen und sie unter einem beliebigen Namen mit der Dateierweiterung.vbsExample: NetworkShutOffScriptThatShutsOffTheInternetSoIcanPlayGamesOnMyXboxAndNotGetLag.vbsExample 2: games.vbs zu speichern.vbsIch mache dies normalerweise auf dem Desktop, weil ich es während der Arbeit ungefähr zig Mal öffne. Jetzt einfach mit der rechten Maustaste auf die Datei klicken und auf Bearbeiten klicken oder mit Notepad ++ bearbeiten

Schritt 4: Schritt 1: Öffnen eines Eingabeaufforderungsfensters

Schritt 1: Öffnen eines Eingabeaufforderungsfensters
Schritt 1: Öffnen eines Eingabeaufforderungsfensters

Also beschloss ich, die meiste Arbeit zu erledigen, ich würde einfach Programme verwenden, die bereits auf dem Computer gespeichert sind, um das zu tun, was ich will. Weniger Codierung und keine Downloads … Woohoo. Am einfachsten ist die Eingabeaufforderung. Daher möchten wir ein Eingabeaufforderungsfenster öffnen, um ein Objekt zu erstellen, um dies zu tun, geben Sie Folgendes ein: set shellobj = CreateObject("WScript. Shell")Was es tut: Setzen Sie eine Instanz von shellobj auf die gleiche Instanz, um ein Objekt mit einer Skript-Shell zu erstellen. Auf diese Weise müssen wir jedes Mal, wenn wir einen neuen Befehl benötigen, shellobj anstelle von CreateObject ("WScript. Shell") eingeben. Nachdem wir ein Objekt erstellt haben, weisen wir das Objekt an, ein Eingabeaufforderungsfenster zu öffnen. Dazu geben wir Folgendes ein: shellobj.run "cmd"Was es macht: Dies entspricht der Eingabe von CMD in das Ausführungsfeld im Startmenü. Hätten wir die Variable shellobject nicht gesetzt, hätten wir folgendes eingeben müssen: CreateObject("WScript. Shell").run "cmd"… sehen Sie, wie viel einfacher es jetzt ist. Weniger Platz für Fehler. Klicken Sie auf Datei… dann Speichern… dann gehen Sie zum Desktop und doppelklicken Sie auf die von Ihnen erstellte vbs-Datei. Wenn alles richtig läuft, sollten Sie eine Windows-Eingabeaufforderung anzeigen…..yaaaaaa!!! Ihre Codierung sollten Sie bisher haben: set shellobj = CreateObject("WScript. Shell")shellobj.run "cmd"Sie können Ihrem Skript Kommentare hinzufügen, damit Sie sich daran erinnern, was Sie später getan haben, indem Sie ein Komma vor die Zeile setzen wie this:'Dies ist, um eine Eingabeaufforderung zu öffnen Wenn ich oft codiere, werde ich dies tun, damit ich mich später daran erinnere, was ich getan habe, wenn ich danach suche. Das Skript ignoriert diese Zeile einfach und fährt fort. Wenn Sie sie sehen, können Sie dasselbe tun.

Schritt 5: Schritt 2: Timer einrichten

Schritt 2: Timer einrichten
Schritt 2: Timer einrichten

Okay, jetzt, da wir ein schickes neues Fenster haben, müssen wir es mit Befehlen füllen, damit wir es tun können, was wir wollen. Das Problem ist, dass einige Computer länger brauchen als andere, um Fenster zu öffnen, daher möchten wir, dass das Skript ein wenig wartet bisschen zu starten. Wenn es zu früh startet, füllt der Computer die Lücke aus, bevor Sie das Fenster öffnen, und Sie erhalten entweder einen Teilbefehl oder gar keinen. Wir müssen also einen Timer einrichten. Um dies zu tun, geben wir Folgendes ein: wscript.sleep 200Was es macht: Es sagt dem Skript, dass es eine X-Zeit warten soll, bevor es den nächsten Befehl ausführt. 1000 entspricht einer Sekunde, also wartet meine eine Fünftelsekunde. Möglicherweise stellen Sie fest, dass Ihr Computer länger oder weniger warten muss. Wenn Sie den Computer beobachten und er die Befehle nicht richtig eingibt, ändern Sie die Zahl in eine höhere Zahl wie 2000, das wären 2 Sekunden und wahrscheinlich viel Zeit. Speichern Sie die Datei jetzt, Ihr Code sollte an dieser Stelle sein: set shellobj = CreateObject("WScript. Shell")shellobj.run "cmd"wscript.sleep 200

Schritt 6: Schritt 3: Machen Sie ein Bild

Schritt 3: Machen Sie ein Bild
Schritt 3: Machen Sie ein Bild

Ich habe gerade Paint geöffnet und "Internet Disconected" eingegeben und es 800x600 gemacht und als id.bmp gespeichert und in meinem Stammverzeichnis gespeichert, in meinem Fall k:\, aber deins wird wahrscheinlich c:\ sein

Schritt 7: Schritt 4: Befehle senden, Bild öffnen

Schritt 4: Befehle senden, Bild öffnen
Schritt 4: Befehle senden, Bild öffnen

Nun, da wir ein Befehlsfenster haben, das auf Befehle wartet, müssen wir nur die Befehle mit dem Befehl sendkeys in das Fenster eingeben. Wenn wir den Befehl sendkeys verwenden, ist das wie beim Tippen, aber es wird alles eingeben, was wir eingeben möchten. Alles, was wir eingeben können, können wir senden, einschließlich der Eingabetasten, die zum Ausführen von Programmen erforderlich sind. Jetzt, da wir wissen, wie man Tasten sendet, können wir unser gerade erstelltes Bild öffnen und dann ein weiteres Timer-Nachwort einfügen, damit das Bild Zeit zum Laden hat. Um dies zu tun, geben wir:shellobj.sendkeys "k:\id.bmp{enter}"wscript.sleep 200Was es macht: Dies entspricht der Eingabe von k:\id.bmp in das Ausführungsfeld. Es sollte Ihr Bild im Standard-Bildbetrachter für ein bmp öffnen … in meinem Fall ist es der Windows-Bild- und Faxbetrachter, aber die meisten Leute installieren After-Market-Programme, die dies auch tun, also wer weiß, was Ihres öffnet. Jetzt speichern Sie Ihre Datei und Führen Sie es aus. Sie sollten eine Eingabeaufforderung und ein Bild zum Popup erhalten. soweit so gut!!!Ihr Code sollte bisher lauten:set shellobj = CreateObject("WScript. Shell")shellobj.run "cmd"wscript.sleep 200shellobj.sendkeys "k:\id.bmp{enter}"wscript. schlaf 200

Schritt 8: Schritt 5: Befehle senden, Internet ausschalten

Schritt 5: Befehle senden, Internet ausschalten
Schritt 5: Befehle senden, Internet ausschalten

Wenn Sie dies noch nicht getan haben, laden Sie an dieser Stelle die PDF-Datei am Ende herunter. Wenn Sie es vermasseln, haben Sie eine Anleitung heruntergeladen, wie Sie es beheben können. Jetzt beginnt der Spaß. Ok, wir werden ipconfig verwenden, um unsere IP-Adresse freizugeben. Ohne eine IP-Adresse können wir keinen Internetverkehr empfangen, da der Router nicht weiß, wohin er an den Computer gesendet wird. Dazu geben wir ein:shellobj.sendkeys "ipconfig /release{enter}"Was es macht: Dies weist das Programm IPCONFIG an, die IP-Adresse freizugeben. {Enter} teilt dem Computer mit, dass Sie die Eingabetaste drücken. Dies wäre, als würde man ipconfig /release in das Ausführungsfenster eingeben und die Eingabetaste drücken. Wenn Sie ipconfig ausführen, wird Ihnen normalerweise angezeigt, dass Ihre IP-Adresse 0.0.0.0 ist. Dies ist, was wir wollen. Ohne eine IP-Adresse weiß der Router nicht, dass wir hier sind und kein Programm kann sozusagen "herauswählen". Nachdem wir nun die IP erfolgreich abgeschaltet haben, wollen wir das Fenster schließen. Jetzt könnten wir eine weitere Zeile schreiben, die lautet:shellobj.sendkeys "exit{enter}"Aber es wäre einfacher, die obige Zeile einfach zu bearbeiten und an das Ende anzuhängen, sodass Sie:shellobj.sendkeys "ipconfig /release{enter}exit. haben {enter}"Speichern Sie es jetzt, aber führen Sie es nicht aus, da Sie Ihre Internetverbindung beenden. Wenn Sie es ausführen und Ihr Internet abschaltet, ändern Sie einfach den Schalter von ipconfig /release zu ipconfig /renew und führen Sie es erneut aus und es sollte es wieder einschalten. Und wenn alles andere fehlschlägt, starten Sie neu und Sie sollten in Ordnung sein. Ihr Code sollte bisher lauten: 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}"

Schritt 9: Schritt 6: Nachrichtenbox erstellen und auf Antwort warten

Schritt 6: Nachrichtenbox erstellen und auf Antwort warten
Schritt 6: Nachrichtenbox erstellen und auf Antwort warten

Ok, jetzt, da wir das Internet erfolgreich abgeschaltet und das Eingabeaufforderungsfenster geschlossen haben, möchten wir, dass ein Meldungsfeld erscheint und fragt, ob wir das Internet wieder einschalten möchten. Aber hier wird es schwierig, wir möchten, dass es wartet für ein Ja, aber wenn wir auf Nein klicken, möchten wir nicht, dass es verschwindet, also verwenden wir eine while-Anweisung, um dies zu tun. Zuerst müssen wir eine Variable für die Messgebox dimensionieren, damit wir ihr Nummernvariablen zuweisen können. Ich weiß, es klingt verwirrend, ist es aber nicht. wir haben es schon einmal mit der Zeile gemacht: set shellobj = CreateObject("WScript. Shell")dieses ist noch einfacher zum Einrichten wir geben einfach ein:Dim MyVarWas es macht: Jetzt haben wir eine Variable namens MyVar dimensioniertWenn Sie ein "yes" erhalten /no"-Meldungsfeld erscheint auf Ihrem Bildschirm und Sie klicken auf die Schaltflächen, es weist jeder Schaltfläche einen Wert zu, in diesem Fall ist "yes" 1 und "no" ist 2. Wir möchten, dass die Variable mit einem "no" beginnt wir weisen ihm standardmäßig die Zahl 2 zu, auf diese Weise wird angehalten, bis eine Schaltfläche angeklickt wirdDazu geben wir Folgendes ein: myvar=2Was es macht: jetzt ist MyVar gleich 2, auf diese Weise wird es in der nächsten Zeile anhalten und auf Eingaben warten. Jetzt wollen wir nur, dass es dort sitzt und wartet, bis wir bereit sind, das Internet wieder einzuschalten. Um dies zu tun, geben wir ein: while myvar=2Was es macht: Dadurch haben wir dem Skript mitgeteilt, dass so lange der Wert von myvar =2 dann schleife einfach die Messagebox weiter, bis wir einen anderen Wert als 2 erhalten, der in diesem Fall nur 1 sein könnte dies geben wir ein:MyVar = MsgBox ("Internetverbindung einschalten", 65, "Internetverbindung einschalten") Was es tut: Jetzt wird der MyVar-Variablen der Wert zugewiesen, der der Schaltfläche zugewiesen ist, auf die im Meldungsfeld geklickt wird. Der erste Teil in den Anführungszeichen ist, was die Messagebox tatsächlich sagt. Die 65 bezeichnet es als Ja/Nein-Nachrichtenbox. und der letzte Teil in Anführungszeichen ist das Label der Messagebox. Um zu überprüfen, welchen Wert es zuweist, wenn Sie auf Ja oder Nein klicken, können Sie eine Zeile mit der Aufschrift msgbox (myVar) hinzufügen und es wird der Wert ausgegeben, der myvar in zugewiesen ist eine Meldungsbox. Jetzt, da wir eine Meldungsbox haben, müssen wir die while-Anweisung schließen. Alles, was sich zwischen dem Öffnen und Schließen der while-Anweisung befindet, wird jedes Mal ausgeführt, wenn Sie auf Nein klicken, denn wenn Sie auf Nein klicken, ist es immer noch ein Wert von 2 und eine Schleife zurück zum ersten Teil dos: Sobald Sie einer while-Anweisung ein Ende setzen, wird sie als Schleife fungieren, bis das Argument nicht mehr erfüllt ist. Wenn Sie also weiterhin auf Nein drücken, wird eine Schleife ausgeführt, aber sobald Sie auf Ja drücken, wird die Schleife verlassen und das Skript wird fortgesetzt. Speichern Sie die Datei, aber warten Sie mit der Ausführung bis zum nächsten Schritt. Ihr bisheriger Code sollte lauten: 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=2while myvar=2MyVar = MsgBox ("Internetverbindung einschalten", 65, "Internetverbindung einschalten")wend

Schritt 10: Schritt 7: Internet wieder einschalten

Schritt 7: Internet wieder einschalten
Schritt 7: Internet wieder einschalten
Schritt 7: Internet wieder einschalten
Schritt 7: Internet wieder einschalten
Schritt 7: Internet wieder einschalten
Schritt 7: Internet wieder einschalten

Jetzt, da endlich jemand auf Ja geklickt hat und die while-Anweisung bestanden hat, müssen wir im Internet urnen. Normalerweise öffne ich eine Bestätigung, damit der Endbenutzer weiß, was vor sich geht, aber es ist rein optional. Um eine Bestätigung anzuzeigen, geben Sie Folgendes ein: msgbox("Wir werden jetzt die Internetverbindung wieder einschalten!!!")Was es tut: Es wird eine Meldungsbox gesendet, die besagt, dass wir jetzt die Internetverbindung wieder einschalten!!! und gibt Ihnen eine OK-Schaltfläche zum Klicken. Jetzt müssen wir nur noch das Internet einschalten und alles schließen. Um das Internet wieder einzuschalten, öffnen wir einfach eine Eingabeaufforderung, stellen Sie den Timer ein und verwenden Sie erneut ipcionfig type:shellobj.run "cmd"wscript.sleep 200shellobj.sendkeys "ipconfig /renew{enter}"Was es macht: Es macht den Befehl zum Ausschalten von vorhin rückgängig und erneuert Ihre IP-Adresse. Sobald Sie Ihre IP-Adresse erneuert haben, können Sie nun wieder Internetverbindungen herstellen. Jetzt müssen wir nur noch die geöffneten Fenster aufräumen. Wieder könnten wir einen sendkeys-Befehl verwenden, aber ich werde nur die letzte Zeile anhängen, um auch die Bereinigungen zu halten. In diesem Fall werde ich das Taskkill-Programm verwenden, um das Programm zu beenden, das das Bild anzeigt. In diesem Fall ist es der Windows-Bild- und Fax-Viewer und wird als rundll32.exe auf der Registerkarte Prozesse des Task-Managers angezeigt. Wenn Ihr Bild mit einem anderen Programm wie irfanview oder acdsee geöffnet wird, suchen Sie den Namen auf der Registerkarte Prozesse und platzieren Sie die rundll32.exe mit dem Namen, den Sie finden. Der Befehl wäre:taskkill /F /IM rundll32.exeWas ist das? tut: der taskkill ist der Name des Programms der /F-Schalter sagt ihm, dass er einen Kill erzwingen soll und der /IM-Schalter teilt ihm den Image-Namen mit. Jetzt fügen wir das an die letzte Zeile an, fügen eine Eingabetaste hinzu, um den Befehl auszuführen, und dann an exit-Befehl und ein weiteres Enter und es sieht so aus:shellobj.sendkeys "ipconfig /renew{enter}taskkill /F /IM rundll32.exe{enter}exit{enter}" Speichern Sie Ihre Datei.

Schritt 11: Fertiges Produkt

Fertiges Produkt
Fertiges Produkt

Wenn alles richtig gelaufen ist, sollte Ihr fertiges Produkt in etwa so aussehen: 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=2while myvar=2MyVar = MsgBox ("Internetverbindung einschalten", 65, "Internetverbindung einschalten")wendmsgbox("Wir werden jetzt das Internet einschalten Verbindung wieder hergestellt!!!")shellobj.run "cmd"wscript.sleep 200shellobj.sendkeys "ipconfig /renew{enter}taskkill /F /IM rundll32.exe{enter}exit{enter}" _Ende des Skripts_Jetzt ist die Programmierung fertig, können Sie das Programm ausführen. Was passieren sollte: 1.) Sie sollten ein CMD-Fenster für eine sehr kurze Zeit öffnen und dann schließen 2.) Ihr Internet sollte nicht mehr funktionieren. aber Sie sehen dies nicht 3.) Ihr Bild sollte sich öffnen Sie öffnen sich jedoch erneut und fragen, ob Sie das Internet wieder einschalten möchten sollte schließen. Da hast du es. Ein sehr einfaches VBscript zum Ein- und Ausschalten Ihres Internets. Hoffe du magst es. Ich habe tatsächlich ein anderes Skript erstellt, das fast identisch mit diesem ist, das die Netzwerkadapter mit einem Programm namens DevCon abschaltet, das wie ein Befehlszeilen-Gerätemanager ist. Funktioniert richtig gut. Das Skript ist mit diesem identisch, außer dass in diesem Befehle für ipconfig vorhanden sind, die Befehle für DevCon enthalten.

Empfohlen: