Microsoft XML Notepad 2007 & XPath

Did you know that you can use Microsoft’s XML Notepad 2007 to help you build XPath queries? Simply open XML Notepad 2007, open an XML file inside of it, or paste the contents of one. Once the document is loaded, find the XML node that you want to query for. …

Continue reading

PowerShell: Initiate Evaluation of ConfigMgr DCM Baselines

Introduction Recently, I was working with Desired Configuration Management (DCM) in System Center Configuration Manager (SCCM / ConfigMgr) 2007 SP2 R3. During the development of configuration items (CIs) and baselines, it’s common to have to trigger baseline evaluations to ensure that the validation rules you’re writing are correct.

Continue reading

PowerShell: Removing Software Updates from Windows

Introduction Recently, I had the need to remove software updates from Windows servers in order to test out patching functionality in System Center Configuration Manager (SCCM / ConfigMgr). Since we’re currently deploying full patched operating system (OS) images, we didn’t really have any machines to test deploying software updates with. …

Continue reading

Silently Installing the Windows 7 AIK

So I’m working on some automated lab build “stuff” and I tried to silently install the Windows 7 AIK using a simple call to msiexec. Apparently there is something built into the Windows 7 AIK MSI package that prevents it from being installed non-interactively. This is a bit frustrating. Upon …

Continue reading

PowerShell: Cleaning Up Empty ConfigMgr Collections

Someone recently posted on the MyITforum ConfigMgr mailing list, asking how to delete a bunch of old, empty collections in ConfigMgr. I took this opportunity to write a simple PowerShell script that will do just that. The code simply iterates over all collections, looks to see if each collection has …

Continue reading

PowerShell: PowerEvents Module

Hey guys, I haven’t written anything new in a while, because I’ve been working on a PowerShell module called PowerEvents. PowerEvents is a module that facilitates working with WMI (Windows Management Instrumentation) permanent event registrations. You can query for and respond to events, all from within WMI! PowerEvents simply makes …

Continue reading

Links to Interesting Stuff

Updated on 2010-11-01 http://powerscripting.wordpress.com – A weekly Podcast with topics revolving around Microsoft PowerShell http://blogs.technet.com/b/heyscriptingguy/ – The official Microsoft Scripting Guys blog Software BitKinex – FTP, SFTP, WebDAV client for Windows XP/Vista/7 NuPack – NuPack is a free, open source developer focused package management system for the .NET platform intent …

Continue reading

PowerShell: Disable CapsLock

Here’s a quick code snippet that shows how to disable CapsLock using PowerShell, combined with some embedded C# and .NET Interop (aka. P/Invoke.NET) code. Credit goes to “BobS00327” for the C# code necessary to handle this. function Set-CapsLock([switch]$Disable = $true) { $CapsCtrl = @" using System; using System.Runtime.InteropServices; using System.Windows.Forms; …

Continue reading

PowerGUI: Save Time, Customize Snippets

Introduction Quest’s PowerGUI Integrated Development Environment (IDE) offers the ability to insert code snippets, similar to Microsoft Visual Studio. This saves a lot of typing, and gives you the general framework for whichever PowerShell construct you’re trying to us, for which you only need to fill in the specifics. These …

Continue reading

PowerShell: ConfigMgr WMI Provider (feat. Lazy Properties)

What are Lazy Properties? So if you’re a script writer, and you also use System Center Configuration Manager 2007 (ConfigMgr), you may have run into a concept called Lazy Properties. Lazy properties are certain (not all) properties on certain (not all) WMI classes, within the ConfigMgr provider namespace, that are …

Continue reading