5 nuttige VB Windows-scripts om uw computer te automatiseren

5 nuttige VB Windows-scripts om uw computer te automatiseren / Programming

Of u nu een IT-analist bent of een gewone computergebruiker, er zijn veel taken die u vaak op uw pc moet uitvoeren. VB-scripts zijn verkleinde Visual Basic-programma's die dienen als Windows-scripts die alles kunnen doen, van belangrijke informatie over uw computerhardware ophalen tot het stoppen en starten van services of het opnieuw instellen van uw netwerkkaart.

Het is mogelijk om op de normale manier al deze individuele dingen te leren of ze te gebruiken met batchbestanden. Maar VB-scripts zijn beter dan batch-scripts Beter dan batch: een Windows Scripting Host-tutorial Beter dan batch: een Windows Scripting Host-zelfstudie Meer lezen omdat ze flexibeler zijn. Als u de volgende scripts opslaat op een gemeenschappelijke plaats die snel te bereiken is wanneer u het nodig hebt, kunt u deze taken in een fractie van de tijd uitvoeren. U dubbelklikt gewoon op het script, beantwoordt een prompt en de taak is voltooid.

Bekijk de volgende VB Windows-scripts en als je er een ziet die je wilt gebruiken, kopieer en plak je het script in Kladblok of een ander codeerinstrument 7 Beste onthaalhulpmiddelen voor programmeurs 7 De beste tools voor het maken van notities voor programmeurs Goede vaardigheden om notities te maken zijn de sleutel om georganiseerd te blijven als programmeur. Hier zijn de beste notitie-apps ontworpen met coders en ontwikkelaars in het achterhoofd. Lees Meer en sla het op als een WSF-bestand.

Bereid uw Windows-scripts voor

Elk van de onderstaande scripts wordt uitgevoerd met slechts een dubbele klik, zolang u het bestand met de .WSF-extensie een naam hebt gegeven, en u hebt de code aan het begin ook ingesloten met:

  

Dit zorgt ervoor dat Windows de taal waarin uw script is geschreven herkent en verwerkt.

1. Gebruik Windows Scripts voor computerinformatie

Windows biedt iets genaamd WMI, of Windows Management Instrumentation, dat uw script voorziet van een interface voor toegang tot componenten van het besturingssysteem. U kunt zelfs query's uitvoeren tegen WMI om actuele live informatie over uw systeem te krijgen. Microsoft biedt een volledige lijst met alle categorieën query's die u tegen het systeem kunt uitvoeren.

We hebben besproken hoe u VBA gebruikt om computerinformatie naar Excel te halen. Hoe kunt u alle pc-informatie zien met een eenvoudig Excel VBA-script Hoe kunt u alle pc-informatie zien met een eenvoudig Excel VBA Script Excel en 10 minuten werk geven u meer gedetailleerde informatie over uw computer dan u ooit voor mogelijk had gehouden. Klinkt te mooi om waar te zijn? Dat is Windows, als u weet hoe u het moet gebruiken. Meer lezen, maar u kunt hetzelfde doen met een eenvoudig VB-script buiten Excel.

In dit voorbeeld gaan we het systeem vragen naar processorinformatie (familie, fabrikant en aantal kernen), informatie over de batterij Hoe de levensduur van de batterij te sparen in Windows 10 Met Power Throttling Hoe de levensduur van de batterij te sparen in Windows 10 Met Power Throttling Microsoft introduceerde power throttling waardoor Windows-gebruikers meer controle hebben over hoe individuele apps omgaan met het batterijverbruik terwijl ze op de achtergrond actief zijn. Meer lezen (beschrijving en status) en informatie over logische schijven Schijfruimte opslaan in Windows 10 Schijfruimte besparen in Windows 10 Qua schijfruimte is Windows 10 ronduit gulzig. 20 GB verspillen aan een kleine SSD kan frustrerend zijn. Gelukkig kunt u de voetafdruk van Windows 10 verkleinen en een deel van die ruimte terugwinnen. Meer lezen (naam, resterende vrije ruimte en totale grootte). Vervolgens voeren we al deze informatie uit naar een CSV-bestand om deze eenvoudig te kunnen bekijken.

De eerste stap is het instellen van het FileSystemObject dat u wilt gebruiken om naar het CSV-bestand uit te voeren en het bestand aan te maken:

OFSO = CreateObject ("Scripting.FileSystemObject") sFile1 = "MyComputerInfo.csv" instellen oFile1 = oFSO.CreateTextFile (sFile1, 1)

De volgende stap is om de WMI-query in te stellen en uit te voeren:

strQuery = "SELECT Family, Manufacturer, NumberOfCores FROM Win32_Processor" Stel colResults = GetObject ("winmgmts: //./root/cimv2") .ExecQuery (strQuery) in

Eindelijk, doorloop de resultaten en voer de informatie naar het CSV-bestand uit. Als je zin hebt, geef dit dan een paar regels om je uitvoerbestand er beter uit te laten zien:

oFile1.WriteLine "Processorinformatie" oFile1.WriteLine "------" Voor elke objResult in colResults strResults = "Familie:," + CStr (objResult.Family) oFile1.WriteLine strResults strResults = "Fabrikant:," + CStr (objResult.Manufacturer) oFile1.WriteLine strResults strResults = "Aantal kernen:," + CStr (objResult.NumberOfCores) oFile1.WriteLine strResultaten Volgende

Als je nu je code uitvoert, ziet je output er als volgt uit:

Voor de volgende twee secties van uw code, gaat u gewoon herhalen en de query wijzigen om naar de aanvullende informatie te zoeken. Dit is de vraag naar batterijgegevens:

oFile1.WriteLine "" strQuery = "SELECT Description, Status FROM Win32_Battery" Set colResults = GetObject ("winmgmts: //./root/cimv2") .ExecQuery (strQuery) oFile1.WriteLine "Batterijinformatie" oFile1.WriteLine "- ---- "Voor elke objResult in colResults strResults =" Status:, "+ CStr (objResult.Description) oFile1.WriteLine strResults strResults =" Beschrijving:, "+ CStr (objResult.Status) oFile1.WriteLine strResultaten Volgende

En hier is de volgende sectie voor de logische schijfquery:

oFile1.WriteLine "" strQuery = "Selecteer Naam, Vrije Ruimte, Grootte van Win32_LogicalDisk" Stel colResults = GetObject in ("winmgmts: //./root/cimv2") .ExecQuery (strQuery) oFile1.WriteLine "Disk Information" oFile1.WriteLine " ------ "'Identificeer de logische schijfruimte voor elke objResult in colResults strResults =" Naam:, "+ CStr (objResult.Name) oFile1.WriteLine strResults strResults =" Vrije ruimte:, "+ CStr (objResult.FreeSpace ) oFile1.WriteLine strResults strResults = "Disk Size:," + CStr (objResult.Size) oFile1.WriteLine strResultaten Volgende

Vergeet ten slotte niet om de code te sluiten door het bestand te sluiten en de objecten in te stellen “Niets”:

oFile1.Close Set oFile1 = Niets ingesteld colResults = Niets strResults = ""

Zet al die code in je nieuwe .WSF-bestand, voer het uit, en hier ziet je uitvoer eruit als:

Wissel bovenstaande vragen eenvoudigweg in voor andere computerapparaten of software waar u informatie over wilt krijgen, en u kunt een volledig systeemrapport krijgen. Een geautomatiseerd pc-meldingssysteem voor de gezondheid maken Een geautomatiseerd pc-meldingssysteem voor uw gezondheid maken lunchen terwijl je mobiel je waarschuwt voor een belangrijke tekst. De sms leest: "Home Computer Alert: 3 hackpogingen." Dit is geen fictie! Laat ons je laten zien hoe je dit doet! Meer lezen wanneer u maar wilt met slechts één muisklik.

2. Stop en start services

Er zullen momenten zijn dat bepaalde services problemen hebben en slechts een snelle herstart vereisen om weer correct te kunnen werken. Dit geldt vooral in IT voordat u IT bestudeert, weet waar u aan begint voordat u IT studeert, weet wat u in de IT-wereld krijgt (IT) is zo'n brede carrièrekeuze geworden. Maar weinig mensen weten eigenlijk wat IT is en wat de discipline inhoudt. Meer lezen als u gedwongen wordt om serversoftware uit te voeren die soms een beetje buggy is.

Als u een minuut of wat wilt scheren van het herstartproces van de service, sla dan gewoon het volgende script op een geschikte plaats op. Het zal u vragen om de naam in te typen van de service die u opnieuw wilt opstarten, en dan zal het precies dat doen.

Aangezien het stoppen en starten van services beheerdersbevoegdheden vereist, moet u de volgende code aan het begin van uw script plaatsen om uw script verhoogde bevoegdheden te geven:

If Not WScript.Arguments.Named.Exists ("elevate") ThenOutObject ("Shell.Application"). ShellExecute WScript.FullName _, "" "" & WScript.ScriptFullName & "" "/ elevate", "", " runas ", 1 WScript.Quit End If

Zodra dit is gebeurd, voegt u de rest van de code toe om het invoervak ​​voor gebruikersinvoer uit te voeren, start u het opdrachtvenster en verzendt u het “netto stop” en “net startcommando's”:

Stel cmdShell = CreateObject ("WScript.Shell") strServiceName = Inputbox ("Inter Service om te stoppen", "Invoer vereist") cmdShell.Run "cmd.exe" WScript.Sleep 1000 cmdShell.SendKeys "net stop" + strServiceName cmdShell. SendKeys "Enter" WScript.Sleep 1000 cmdShell.SendKeys "net start" + strServiceName cmdShell.SendKeys "Enter" WScript.Sleep 1000 cmdShell.SendKeys "Exit" cmdShell.SendKeys "Enter"

Dat is alles wat er is. U hoeft niet rond te jagen op de services-tool. Voer dit script uit en stop en start elke service in seconden.

3. Wijzig registerinstellingen, standaard beheerderswachtwoord

Met het volgende script gaan we twee vogels in één klap doden. Dit script laat je zien hoe je het register kunt bewerken 5 Windows 10 Register-aanpassingen om functies te verbeteren en ontgrendelen 5 Windows 10 Register-aanpassingen om functies te verbeteren en ontgrendelen De registereditor is de enige manier om sommige van de verborgen functies van Windows 10 in te schakelen. Hier laten we u eenvoudige aanpassingen zien, zoals het inschakelen van het donkere thema of verbergen van mappen. Meer lezen met een VB-script. Het geeft je ook een script waarmee je de standaard Windows-gebruikersnaam en -wachtwoord kunt instellen door die registerinstellingen te bewerken.

Dit is hoe het werkt. Ten eerste, aangezien voor het bewerken van het register beheerdersrechten nodig zijn, moet u verhoogde rechten voor uw script instellen:

If Not WScript.Arguments.Named.Exists ("elevate") ThenOutObject ("Shell.Application"). ShellExecute WScript.FullName _, "" "" & WScript.ScriptFullName & "" "/ elevate", "", " runas ", 1 WScript.Quit End If

Voer eerst twee invoervakken uit om de gebruiker te vragen welke gebruikersnaam en welk wachtwoord moet worden gebruikt:

strUserName = Inputbox ("Voer de standaard gebruikersnaam in", "Invoer vereist") strPassword = Inputbox ("Voer het standaard wachtwoord in", "Invoer vereist")

Stel vervolgens het shell-object in en schrijf die waarden naar de juiste registersleutels:

Stel wshShell = CreateObject ("WScript.Shell") wshShell.RegWrite in "HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Winlogon \ DefaultUserName", strUserName, "REG_SZ" wshShell.RegWrite "HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Winlogon \ DefaultPassword ", strPassword," REG_SZ "Set wshShell = Nothing

En dat is alles wat er is. De “RegWrite” methode kunt u elke waarde schrijven naar een registersleutel met behulp van een VB Windows-script. Alles wat u moet weten, is het juiste pad.

Voer het script uit en beantwoord de aanwijzingen.

De waarden die u invoert, worden rechtstreeks ingevoegd in de registerinstellingen die u in het script hebt ingesteld.

Speel met het script en pas het naar wens aan. U kunt willekeurige registersleutels bewerken die u bevallen, dus wees creatief!

4. Reset uw netwerkverbinding

Uw netwerkverbinding opnieuw instellen met VB-scripting Een Windows-script schrijven om netwerkinstellingen te wijzigen On the Fly Een Windows-script schrijven om netwerkinstellingen te wijzigen On the Fly In veel kantoren of werkomgevingen moet u mogelijk uw netwerkinstellingen opnieuw definiëren om verbinding te maken naar verschillende netwerken. Ik vond mezelf vaak in deze situatie en werd zo moe van het bladeren naar de ... Lees meer is iets dat we eerder hier bij MakeUseOf hebben besproken. De volgende versie hiervan is eigenlijk verkleind en veel eenvoudiger te implementeren. In plaats van om individuele netwerkkaarten te vragen, worden al uw actieve verbindingen opnieuw ingesteld, waardoor hopelijk eventuele netwerkproblemen worden opgelost.

Net als bij andere scripts waarvoor beheerdersrechten nodig zijn, moet u de sectie aan het begin toevoegen voor verhoogde rechten. Kopieer die code uit het bovenstaande script.

Maak vervolgens het WMI-object en doorzoek het voor een lijst met ingeschakelde netwerkadapters op uw systeem:

strComputer = "." Stel objWMIService = GetObject ("winmgmts: \\" & strComputer & "\ root \ CIMV2") Stel colItems = objWMIService.ExecQuery in (_ "SELECT * FROM Win32_NetworkAdapter Where NetEnabled = 'True'")

Eindelijk, loop door alle ingeschakelde adapters en reset ze:

Voor elke objItem in colItems objItem.Disable WScript.Sleep 1000 objItem.Enable Volgende

Hiermee worden al uw actieve netwerkadapters gereset 8 CMD-opdrachten voor het beheren van (draadloze) netwerken in Windows 8 CMD-opdrachten voor het beheren van (draadloze) netwerken in Windows Als u volledige en absolute controle over uw netwerk wilt, moet u beginnen met het gebruik Opdrachtprompt. Dit zijn de handigste opdrachten voor het beheren en oplossen van problemen met uw thuisnetwerk. Lees meer, wat vaak de snelste manier is om vervelende netwerkproblemen op te lossen. Houd dit script bij de hand en probeer het eerst wanneer u een traag netwerk of andere rare netwerkproblemen hebt.

5. Ping-apparaten of websites

Ik heb mijn favoriete VB windows-script als laatste bewaard. Dit is er een die ik eigenlijk heb ingesteld als een geplande taak op mijn thuiscomputer en deze meerdere keren per dag laat lopen om te controleren of mijn website actief is. 3 manieren om erachter te komen of je favoriete website geen 3 manieren heeft om erachter te komen Favoriete Website Is Down Er zijn een paar websites die eenvoudigweg zijn gewijd aan het beantwoorden van de basisvraag die je uiteindelijk zult stellen: "Is deze website niet beschikbaar?" Hier hebben we drie van deze websites, en ze zijn allemaal ... Lees meer. Ik heb het script per e-mail als de site niet bereikbaar is. U kunt ditzelfde script gebruiken om belangrijke servers of computers in uw netwerk te controleren en uzelf een e-mail te sturen wanneer uw script het apparaat niet kan pingen.

Stel eerst het script in voor het doel dat u wilt pingen, maak het shell-object en voer vervolgens de ping-opdracht uit.

strTarget = "topsecretwriters.com" Stel WshShell = WScript.CreateObject ("WScript.Shell") in Ping = WshShell.Run ("ping -n 1" & strTarget, 0, True)

Gebruik een Select Case-opdracht om de Ping-resultaten te doorlopen en dienovereenkomstig te reageren. Als resultaten terugkomen als nul, weet u dat de site (of server) online is en u niets hoeft te doen. Als het a terugkeert “1” dan is de ping mislukt en moet je iets doen. In mijn geval stuur ik een e-mail met het Windows CDO-object:

Selecteer Case Ping Case 0 Case 1 Set objMessage = CreateObject ("CDO.Message") Stel objConfig = CreateObject ("CDO.Configuration") objConfig.Load -1 Set Flds = objConfig.Fields With Flds .Item ("http: // schemas.microsoft.com/cdo/configuration/smtpusessl ") = True .Item (" http://schemas.microsoft.com/cdo/configuration/smtpauthenticate")=1. Item ("http://schemas.microsoft. com / cdo / configuration / sendusername ") =" [email protected] ".Item (" http://schemas.microsoft.com/cdo/configuration/sendpassword")="xxxxxxxxxxxxxxxxx ".Item (" http: // schemas.microsoft.com/cdo/configuration/smtpserver")="smtp.gmail.com ".Item (" http://schemas.microsoft.com/cdo/configuration/sendusing")=2. Item ("http: //schemas.microsoft.com/cdo/configuration/smtpserverport")=465 .Update End With With objMessage Set .Configuration = objConfig .Subject = "Uw site is offline" .From = "[email protected]" .To = "[email protected]" .TextBody = "Hé, uw website is offline." .Stuur eind met einde selecteer

Zodra het script wordt uitgevoerd en het apparaat of de website niet kan pingen, krijgt u een expresbericht.

Het is snel en gemakkelijk en efficiënt!

VB Windows Scripts gebruiken om uw computer te besturen

Dit zijn slechts enkele voorbeelden van enkele van de leuke dingen die u kunt doen met VB-scripting om uw computergebruik te stroomlijnen. Er zijn nog veel meer dingen die u kunt doen, zoals automatische back-ups met VB en Synctoy. Een hulpmiddel voor gegevensback-up maken met SyncToy & VB Script Een hulpmiddel voor gegevensback-up maken met SyncToy & VB Script We hebben hier veel back-upoplossingen behandeld bij MUO, en al deze oplossingen zijn geweldig, maar als u werkt in een omgeving die op uw hoede is voor gratis softwarepakketten van derden of bedrijven ... Lees meer, telnetopdrachten automatiseren Telnet-opdrachten automatiseren VB-script gebruiken Automatiseren Telnet-opdrachten met VB Script Schrijven van batchtaken en meer recent Windows-scripts is een activiteit die het grootste deel uitmaakt van hoe de overgrote meerderheid van netwerk- en systeembeheerders sneller hun werk doen, en vereenvoudigen wat zou ... Lees meer, of zelfs openen en beheren toepassingsvensters 3 manieren om applicaties te openen en Windows gemaximaliseerd met VB Script [Windows] 3 manieren om applicaties te openen en Windows gemaximaliseerd met VB Script [Windows] Als er iets is dat ik leuk vind om te doen, het is VB-scripts schrijven. Of het nu gaat om een ​​Windows Script-bestand of een VBA-script in een applicatie, scripting biedt de mogelijkheid om functionaliteit toe te voegen aan applicaties ... Lees meer .

Wat zijn enkele dingen die u op uw computer hebt geautomatiseerd met een Windows-script? Schrijf je de jouwe met behulp van VB, of gebruik een ander hulpmiddel zoals PowerShell Powershell-cmdlets die je Windows-beheerdersvaardigheden verbeteren Powershell-cmdlets die je Windows-beheermogelijkheden verbeteren Powershell is gelijkwaardig commandoregelhulpmiddel en scriptingtaal. Het geeft u de mogelijkheid om uw computer te automatiseren via dezelfde opdrachten die u gebruikt om het te beheren. Lees verder ?

Ontdek meer over: Computerautomatisering, Scripting.