Table of Contents
Links
Algemeen:
MSDN Library
Script Center
TechNet Script Center Gallery
Cruto.com - Developer Resources
ActiveXperts - Scripts Collection (1)
ActiveXperts - Scripts Collection (2)
Admin Script Editor > VBScript Home Page
Frequently Asked Stuff
Do-It-Yourself Script Center Kit
W3 Schools - VBScript Functions
Win32 Scripting
MSDN Cutting Edge - Extend the WSH Object Model with Custom Objects
The Code Project - Free Source Code and Tutorials
FTP:
Microsoft Support - Using FTP Batch Scripts
DOS FTP Automation
Logon Scripts:
Logon Scripts - with VBScript
Specifiek VbScript voor printers:
ActiveXperts - Print Server Scripting
Windows Logon Scripts - Create Multiple Printers
VBS Logon Script - AddWindowsPrinterConnection
Add Printers Based on Name of Computer
ADSI Scripting
Specifiek VbScript voor Active Directory:
VBScript - For Windows Networks
Scripting Exchange Using VBScript and ADSI (Part 1)
Scripting Exchange Using VBScript and ADSI (Part 2)
Scripting Exchange Using VBScript and ADSI (Part 3)
ActiveXperts - Scripts to manage Active Directory Users
Binding to Active Directory objects with the WinNT provider
VbScript examples
WiseSoft - Interactive Active Directory Schema Guide
Microsoft - Searching Active Directory
GFi - ADSI
ADO Connection Strings A list of ODBC DSN Connection Strings.
AutoIt
Voorbeelden
msiexec /i “dirnaam” /opties uitvoeren?
Probeer:
Run("msiexec /i installer.msi /qb!", "c:\directory")
Of:
Run("msiexec /i " & chr(34) & "c:\directory\installer.msi" & chr(34) & " /qb!", "c:\temp")
Notities
GUICtrlRead(ControlID) returned geen 0 bij geen invoer in GUICtrlCreateInput box, maar niks,
If GUICtrlRead($UNCDropBox) = "" Then
werkt
If GUICtrlRead($UNCDropBox) = 0 Then
werkt niet
VBScript
Voorbeeld
VBScript voor het opvragen van naam, ip adres en IPEnabled van alle netwerkkaarten op de pc met behulp van WMI.
strComputer = "." Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set colItems = objWMIService.ExecQuery("Select * from Win32_NetworkAdapterConfiguration",,48) For Each objItem in colItems Wscript.Echo "Caption: " & objItem.Caption For Each strAddress in objItem.IPAddress Wscript.Echo strAddress Next Wscript.Echo "IPEnabled: " & objItem.IPEnabled next
Bron:Hip, Hip, Array - Retrieving Multi-Valued WMI Properties from Windows PowerShell
WMI
Links
Secrets of Windows Management Instrumentation
MSDN - Windows Management Instrumentation (WMI)
WMI Scripting Primer: Part 1
WMI Scripting Primer: Part 2
MSDN - WMI Reference
ActiveXpert
WMI Samples - Hardware
Detecting IP Network Availability
WMI Filtering for Windows 2000 emulates the effect of WMI Filtering for computer accounts running Windows 2000 and later OS.
leastprivilege.com - Connecting to WMI ... and security
Ask the Directory Services Team - Fun with WMI Filters in Group Policy
Blogposts/Articles
Tools
Voorbeeld script
WMI-filter voor GPO.
Root\CimV2; Select * from Win32_OperatingSystem where Caption = "Microsoft Windows XP Professional"
Volgende werkt jammergenoeg niet:
SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPAddress LIKE '%192.168%'
Reden: “LIKE can't be used for “IPAddress”, because this property is an array and arrays are not supported by WQL.”
Bron:Help with WQL query
WMI-Filter voor Windows Server 2008
select * from Win32_OperatingSystem where Caption like '%2008%'
Filteren op XP en SP niveau
XP Service Pack 1 en 0:
Query = "Select * from WIN32_OperatingSystem where ServicePackMajorVersion<=1 and Version='5.1.2600'"; QueryLanguage = "WQL"; TargetNameSpace = "root\\CIMV2";
XP Service Pack 2, 3 en hoger:
Query = "Select * from WIN32_OperatingSystem where ServicePackMajorVersion>=2 and Version='5.1.2600'"; QueryLanguage = "WQL"; TargetNameSpace = "root\\CIMV2";
XP Service Pack 1:
Query = "Select * from WIN32_OperatingSystem where ServicePackMajorVersion=1 and Version='5.1.2600'"; QueryLanguage = "WQL"; TargetNameSpace = "root\\CIMV2";
XP Service Pack 2:
Query = "Select * from WIN32_OperatingSystem where ServicePackMajorVersion=2 and Version='5.1.2600'"; QueryLanguage = "WQL"; TargetNameSpace = "root\\CIMV2";
XP Service Pack 3:
Query = "Select * from WIN32_OperatingSystem where ServicePackMajorVersion=3 and Version='5.1.2600'"; QueryLanguage = "WQL"; TargetNameSpace = "root\\CIMV2";
OS Captions
Windows XP (SP3)
Microsoft Windows XP Professional
Windows Server 2003 (x64):
Microsoft(R) Windows(R) Server 2003 Standard x64 Edition Microsoft(R) Windows(R) Server 2003 Enterprise x64 Edition
Windows Server 2008 (x86 en x64):
Microsoft® Windows Server® 2008 Standard Microsoftr Windows Serverr 2008 Enterprise
Bron:
strComputer = "." Set objWMIService = GetObject("winmgmts:" _ & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") Set colOS = objWMIService.ExecQuery("Select * from Win32_OperatingSystem") For Each objOS in colOS WScript.Echo objOS.Caption Next Set colOS = Nothing Set colSystem = Nothing Set objWMIService = Nothing
Filteren op het geïnstalleerd zijn van twee applicaties
Zet tweemaal een controle op een bestand in het filter. Beide controles moeten true zijn om de hele controle op true te laten uitkomen:
instance of MSFT_Rule { Query = "Select * From CIM_Datafile Where Name = 'C:\\\\Program Files\\\\Microsoft Office\\\\Office11\\\\winword.exe'"; QueryLanguage = "WQL"; TargetNameSpace = "root\\CIMv2"; }, instance of MSFT_Rule { Query = "Select * From CIM_Datafile Where Name = 'C:\\\\Program Files\\\\Altiris\\\\Software Virtualization Agent\\\\svscmd.exe'"; QueryLanguage = "WQL"; TargetNameSpace = "root\\CIMv2"; }