Creating a Custom DSC Resource to Configure Jumbo Frames on Network Cards

Recently while working on configuring a new server with DSC (Desired State Configuration), I discovered that there wasn't a DSC resource for configuring the jumbo frames setting on network cards so I decided to write my own. This blog article steps you through the process of creating a custom DSC resource, specifically one that is used to configure the jumbo frames setting on network cards. The specific settings for jumbo frames can vary depending on your network card manufacturer and the specific Read more [...]
Posted in PowerShell | Tagged , | Leave a comment

My Solution to the Impractical One-liner Challenge

I recently participated in an "Impractical One-liner Challenge" that Stephen Owen posted on his blog site where he challenged his readers to come up with a PowerShell one-liner that would allow the person running it to select a single OU (Organizational Unit) from a list of all the OU's in Active Directory and then move a list of computer accounts that are contained in a text file to that OU. My solution requires the Active Directory PowerShell module and at least PowerShell version 3. I decided Read more [...]
Posted in PowerShell | Tagged | Leave a comment

Use PowerShell to Determine what Outlook Client Versions are accessing your Exchange Servers

Earlier this month I saw a blog article on "The EXPTA {blog}" about "Reporting Outlook Client Versions Using Log Parser Studio" and I thought I would show you a simple alternative using PowerShell that accomplishes the same task while giving you some additional flexibility. This simple PowerShell function can be used to parse the Exchange Server RPC logs.Piping this command to Out-GridView provides the same output in a similar looking interface as what was Read more [...]
Posted in Exchange Server, PowerShell | Tagged , | Leave a comment

Unlock a Volume Protected with BitLocker Drive Encryption

Have a Windows Server 2012 R2 machine that runs the Server Core (no-GUI) installation of the operating system? Maybe that server has a volume that is protected with BitLocker Drive Encryption? If so, how would you unlock the encryption so you can access the data on that volume without using a graphical user interface? With PowerShell of course, specifically the Unlock-BitLocker PowerShell cmdlet:µ Read more [...]
Posted in PowerShell | Tagged | Leave a comment

Creating a Simplistic GUI Interface with Out-GridView

A couple of weeks ago I noticed a post in the forums at where a question was asked about selecting a group of servers in Server Manager and running a PowerShell script against that selection of machines. While my solution doesn't accomplish exactly what I think they were looking for, it does the next best thing. First, I added a menu item to Server Manager called MrToolkit (short for Mike Robbins Toolkit) based on a "Customize Tools menu in Server Manager" blog article on the TechNet Read more [...]
Posted in PowerShell | Tagged | Leave a comment

New Modules, Cmdlets, & Parameters in PowerShell Version 5

Think keeping up with the changes between major versions of PowerShell is difficult? Well just try keeping up with the changes that are added and removed in preview versions. The following is a list of the new modules, cmdlets, and parameters that have been added so far in PowerShell version 5 grouped by the different preview releases. Windows Management Framework 5.0 Preview September 2014: New cmdlets and the existing module they were added to: Microsoft.PowerShell.Core Enter-PSHostProcess Exit-PSHostProcess Microsoft.PowerShell.Utility ConvertFrom-String Wait-Debugger OneGet Get-PackageProvider Register-PackageSource Unregister-PackageSource Set-PackageSource Save-Package PowerShellGet Get-PSRepository Set-PSRepository Register-PSRepository Unregister-PSRepository Parameters Read more [...]
Posted in PowerShell | Tagged , | 1 Comment

PowerShell Function to Create CimSessions to Remote Computers with Fallback to Dcom

I've found myself writing the same code over and over in my PowerShell scripts where I'm performing a task that requires me to create a CimSession to one or more computers without knowing what version of PowerShell is installed on the remote computers or if PowerShell is even installed on the remote computers. While it is possible to create a CimSession to a remote computer in any of those scenarios I just described, it's a fair amount of code to add to multiple scripts and then the same redundant Read more [...]
Posted in PowerShell | Tagged | Leave a comment

PowerShell Track at SQL Saturday #328 in Birmingham Alabama this Weekend!

Do you work with technology and live within driving distance of Birmingham Alabama? Then you should consider attending SQL Saturday #328 this weekend. There’s an entire track dedicated to PowerShell and while a few of the sessions in that particular track will focus on SQL Server, there's also a session on PowerShell Fundamentals for SharePoint, a session on Stupid PowerShell Tricks by PowerShell MVP Jim Christopher, and a session on the new features in PowerShell version 5 that I’ll be presenting. I'll Read more [...]
Posted in PowerShell, SQL Server | Tagged , | Leave a comment

Don’t miss the boat: PowerShell Summit Europe 2014

If you’re a frequent reader of the articles on this blog site then you probably already know that the information I write about is based on my real world experiences and the same holds true for this blog article about the PowerShell Summit conferences. During the past two years (since its inception), I have attended the PowerShell Summit North America and I can say without doubt that attending those conferences has definitely helped to advance my career. While anyone can pay the fee and attend, Read more [...]
Posted in PowerShell, PowerShell Summit | Tagged , | Leave a comment

Set a Users Active Directory Display Name with PowerShell

I recently saw an article on how to set a users Active Directory display name based on the values of their given name, initials, and surname. I came up with my own unique solution for this task and thought I would share it with you, the readers of my blog. As you can see in the following example, there are a mixture of users who need their display name corrected based on the requirement that their display name be listed as "Givenname Initials Surname":I Read more [...]
Posted in Active Directory, PowerShell | Tagged , | Leave a comment

Exclude Delayed Start Services when Checking Status with PowerShell

While using PowerShell to return a list of Windows services that are set to startup automatically and aren't running may sound like a simple task, it's not quite as easy as it sounds, at least not if you want accurate results. This is due to the services that are set to startup automatically with a delayed start skewing the results. For more information on how to accurately return a list of services that should be running, but aren't based on services that have a startup type of automatic while Read more [...]
Posted in PowerShell | Tagged | Leave a comment

Using PowerShell to discover information about your Microsoft SQL Servers

Earlier this week, I had an article published by PowerShell Magazine on the subject of "Using PowerShell to discover information about your Microsoft SQL Servers". Here's a brief description about that article: "In this article, I’ll be discussing how PowerShell can be used to retrieve just about any information that you would want to know about modern versions of SQL Server that you currently have running in your environment. This article isn't meant to be a deep dive, it’s meant to get Read more [...]
Posted in PowerShell, SQL Server | Tagged , | Leave a comment