Category: PowerShell

Get-DAGDatabaseInformation

The function: Get-DAGDatabaseInformation works in Exchange versions that a DAG (Database Availability Group) exists. From 2010 through 2019, this simple little function presents information to the end user about the status of the databases. In the Exchange Admin Center (EAC), the GUI that is, one must click on each server and each DB to see

Exchange_AddIn updated

Well, the one constant in IT is change. The MO_Module was too confusing for people to know what it was for, so I went back and updated the Exchange_AddIn PowerShell Module. All of the updated functions over the past several months are being cut over, I've updated all of the helpURI values, and added in

Connect-ExchangeOnlineNonMFA

This is another handy one to use, which allows connecting to Exchange Online easily. Similar to the O365_Logon module I have published, this function includes a prefix option. The prefix appends a value to the noun of cmdlets that allows you to run more than one remote session in the same PowerShell console that you

Get-GroupMemberCount

Need to know a member count of ALL distribution groups and e-mail enabled security groups in your organization that exports to a CSV file? Then this function is for you. Get-GroupMemberCount This function simply creates a .CSV file of all the e-mail enabled groups and current member count. May not be the most elaborate task,

Start-DAGMaintenanceMode and Stop-DAGMaintenanceMode

These two are really good functions. While I just used others’ code, I do give them credit, but to be able to ‘function these up’ is very handy. Not that I’m lazy…OK, I’m efficient, but having verb-noun at your fingertips, whenever you need to run something, is very convenient. Furthermore, I can’t tell you how

Using the same exact time with Get-Date

Many times, when using Get-Date in PowerShell, it is very easy to have start and end times for reporting processes. However, the issue is, the Get-Date cmdlet runs and obtains the time when it is run. If you want to run a specific time, say at exactly midnight every day, there is a way to

Get-Date in UTC

Need to show time in UTC (Universal Time)? There is a 'method' with the Get-Date cmdlet. If you run: Get-Date | Get-Member You'll find that one of the methods is ToUniversalTime() which allows you to output the time of the local machine, converted to the UTC time. Run the code below to show how the

Get-OutlookBitValue

This little function is interesting, it will display the bit version of the Outlook client on a machine. I got this from an internal discussion, that someone needed to get an answer for a customer. I grabbed the code, functioned it up, and here it is. Now, my first thought is, why does it matter?

Restart-ExchangeIIS

One issue Exchange engineers run into from time to time, is the need to restart IIS (Internet Information Services). Here is a simple way to restart IIS on all Exchange servers in the organization: Restart-ExchangeIIS I’ve considered scoping this to say just a few servers, but then, that’s easy to remote into a machine and

Restart-IISOnServers

Added this to the MO_Module to remote in and restart just the IIS service on a single computer or a list of computers. Easy enough to do without a function, but I added some logic and Write-Verbose information to help the person running the command to see the content easier and quick. This will restart