Get-InstalledSoftware
Get-InstalledSoftware reads uninstall registry keys from a host, it will also read Uninstall keys from loaded user hives (HKEY_USERS). Get-InstalledSofware does not load hives, a user must have been...
View ArticleCompare-Array
Compare-Object and Group-Object are very powerful tools for comparing and manipulating arrays of objects. Compare-Array is intended to be used against arrays containing primitive data types where Type...
View ArticleIndented module management
A while ago I decided to split a number of my modules up as they were becoming messy. Instead of standalone modules I now have modular modules. The split introduced something of a version management...
View ArticleConvertTo-Subnet
A new function has been added to Indented.NetworkTools: ConvertTo-Subnet. ConvertTo-Subnet performs a bitwise comparison, determining the longest (contiguous) match between two IP addresses.function...
View ArticlePowerShell file-based binary search
I thought I’d share my binary (half-interval) searcher implementation. The searcher may be used for finding text in a pre-sorted text file. The advantage of a binary search is that it is extremely...
View ArticleTesting LDAPS
I’ve recently bumped into a need to verify certificates deployed for LDAPS on Active Directory. PowerShell remains my tool of choice for such occasions as this. It is possible to very simply test an...
View ArticleDynamic parameters
This short function simplifies the creation of dynamic parameters. The function exposes each of the possible validators as well as a few of the less well known options for ValidateSet and...
View ArticlePowerShell: .NET 4.0 zip file handling
The .NET Framework 4.0 brought an upgrade to the System.IO.Compression classes allowing native handling of zip files. The two scripts below demonstrate compression and expansion uses these classes. The...
View ArticleCmdlets without a dll
PowerShell defines a number of different types of command. Functions are written in PowerShell (normally), and Cmdlets are written in a compiled language (C# more often than not). Classes, introduced...
View ArticleCoding conventions and PSScriptAnalyzer
PSScriptAnalyzer is a static analysis tool, it examines source code and flags issues based on configured rules. PSScriptAnalyzer comes allows a developer to define and inject their own rules using the...
View Article