Uninstall Windows Updates Based On Date

I recently needed a quick PowerShell script to uninstall windows updates based on date. In the example below, i wanted to uninstall any Windows Updates that had been installed on or after 01/01/2022. cls $ListOfHotfixes = Get-HotFix | Select hotfixid,description,installedby,@{label=”InstalledOn”;e={[DateTime]::Parse($_.psbase.properties[“installedon”].value,$([System.Globalization.CultureInfo]::GetCultureInfo(“en-US”)))}} … Continue reading


Installing Fonts with PowerShell

The mechanism of installing fonts with PowerShell works slightly differently since the Windows 10 1809 feature update. Previously we could use this one-liner: (New-Object -ComObject Shell.Application).Namespace(0x14).CopyHere(“C:\Build\Font\A39WB_.TTF”,0x14); But since 1809 this installs the font to the per-user location as opposed to … Continue reading


Export Data to a CSV and Maintain the Column Order

This post provides a simple example of how we can export data to a CSV and maintain the column order: $csvFile = “c:\temp\alkane.csv” $exampledata = @(@(“John”,”37″),@(“Peter”,”14″),@(“Michelle”,”22″),@(“Abdul”,”31″),@(“Roger”,”22″),@(“Rachel”,”50″)) $csvwrapper = @() foreach($person in $exampledata) { $name = $person[0] $age = $person[1] #append … Continue reading