First, let me address why I haven’t written a blog post in a while. As of now I am still deep into producing quite a few Practical PowerShell books. I am the solo author on three books that I am aiming to get out by end of December. There is also a fourth book I am also working on, with a co-author (I am the co-author actually..), for April of next year. These books tend to take up gobs of my time. In the meantime, I am still producing my PowerShell Tips of the week to help those with PowerShell. So I was feeling a bit guilty about the time I was spending on those efforts and decided to put out a blog post today for my readers.
Built-In scripts for Exchange Servers are a topic I don’t usually cover as they have been around for quite some time with little to no change between versions. However, I was reviewing the content of some built-in scripts this week when I ran into some interesting observations on two of the scripts. One script should have worked in Exchange 2019 and one, to be honest, should not exist in Exchange 2019 anymore. So, I figured I could share my findings and see if anyone else had run into this and if not, then explain why these are an issue.
Yes, I know, too many updates. However, I want these scripts to be as useful as possible. So. Here is another update on TWO of my Exchange Prerequisite installation scripts:
Exchange 2016 – Version 1.17
Exchange 2019 – Version 1.11
Leave feedback if you like them! and if not… add something to the Q&A or post a comment here. Thanks again!
As always, I am humbled and honored to receive this award from Microsoft. Feels good to know that I am contributing to the Exchange, PowerShell and Office 365 community. This is now my seventh Microsoft MVP award and one where I also received a second category of Cloud and DataCenter Management in addition to my Office Services and Apps category.
Thanks again Microsoft for the award and for allowing me to work and learn from such a great Product Team (Office 365)!
All free, all publishes this week. Please click on the links below to view the tips!
PowerShell Parameter Basics
Ran into an oddity I thought I would share. After installing and verifying a customer’s Exchange 2013 CU22 upgrade using PowerShell, I handed the servers over to the customer. Sometime in the next week the customer contact me to verify I installed the correct CU. Thinking this was rather strange, he shared a screenshot of Add Remove Programs with it clearly showing CU20 as the installed version. I logged into the server and indeed it was incorrect. PowerShell, however, had the version correct at 15.00.1473.3. I then ran the install in a lab, same result. Add Remove Programs was wrong and PowerShell was correct:
After a bit of research, it appears that this is a known issue:
Exchange 2013 CU22 Shows Incorrect Name In Add/Remove Programs
Checking previous and current releases of Exchange, I do not see any other versions that are like that. Not sure how that slipped through QA, but there are other examples of these little things that slip through Microsoft’s QA from time to time. At least this isn’t a major issue.
Microsoft has their own Exchange Supportability Matrix which covers many parts of what is supported with a particular version of Exchange. What you will find is that some charts that are included are a bit wanting. A Lot of older and historical information has been pulled. A fellow MVP, Michel de Rooij posted a a good reference chart for Exchange servers. From that I created a new one and separated all CU’s out and updated it to include the newest CU’s released in June 2019. The chart will look like this:
I plan to bookmark this on the menu bar of my blog to be used as a good reference. If you like it, please make sure to leave feedback. Thanks!
** UPDATE **
I had gotten so accustomed to working with newer OS’s like Windows 2016 and 2019, that I had forgotten how much of a pain .NET is for Windows 2012 R2. So when I re-wrote the code for the script I assumed I no longer needed some of the hotfixes that were used for .NET 4.7.1. Boy was I wrong. So, if you can avoid not downloading this script yet, I am re-testing the hotfixes to see what works with 4.7.2 and 4.8 for Windows 2012 R2. Thanks for understanding….
to the Original Article**
Microsoft has continues to release Exchange 2013 updates, so in that spirit I’ve decided to keep the Exchange 2013 Prerequisite Script up to date. If you read my blog, you may have noticed the recent updates for my Exchange 2016 and 2019 scripts. Any supported updates were incorporated in the 2013 script. I also took some effort to sweep out old code, reorganize all functions and add some missing features. So, if you are installing a newer version of Exchange 2013, this script is for you. The default option is .NET 4.7.2 for now, until Microsoft requires the change to .NET 4.8. There is an options to install 4.8 as well, so if that is what you want, install that first, reboot and follow the rest of the Exchange prerequisite install steps.
The script is now on version 20 and the script is approaching 7 years in age…
Please download the Exchange 2013 prerequisite script HERE. Please feel free to leave comments of questions either on thiis blog post or on the download page. If there is anything you would like to see, feel free to drop me a comment. Thanks!