Get-Service can provide basic information about Windows services but won’t list the required privileges. Here is a small PowerShell function...
posts-powershell
Using Variable Breakpoints (Part 2)
In the previous tip we examined Set-PSBreakpoint to create dynamic variable breakpoints in PowerShell. We showed how a breakpoint can trigger when a...
Using Variable Breakpoints (Part 1)
For debugging, variable breakpoints can be of invaluable help. They break into the debugger once a variable changes. If you know that a variable...
Hiding Properties in Return Results
By default, PowerShell shrink-fits most objects and shows only the most important properties by default: PS C:\> Get-WmiObject -Class Win32_BIOS...
Locking Workstation
PowerShell can access low-level API functions by using C#-style signatures. This way, API functions are compiled in-memory and added as new types....
Command Discovery Unleashed (Part 2)
When you enter a command in PowerShell, the engine triggers three events to actually discover the command you want to execute. This gives you a...
Command Discovery Unleashed (Part 1)
Whenever you enter a command in PowerShell, a series of events takes place to figure out where the command is located. This starts with a...
Adding Numbers to a String (Part 2)
In the previous tip we illustrated a number of ways how to safely add variables to string content. Adding variables to double-quoted text can expose...
Adding Numbers to a String (Part 1)
Double-quoted strings can easily expand variables, however this concept is not foolproof: $id = 123 # this is the desired output: # Number is 123: #...
Get-PSCallStack and Debugging
In the previous tip we have used Get-PSCallStack to determine the “nest level” of code. Let’s today take a look at how this cmdlet...
Discovering Nesting Level
Get-PSCallStack returns a so-called “Call Stack” which – in its simplest form – tells you the nesting depth of your code:...
Super Simple Random Password Generator
Here is a super simple approach to create random passwords. The approach makes sure no ambiguous characters are used but does not care about other...