Windows 10 Update | Before and After | Drivers, Packages, Language Packs and FODs
So you are upgrading your Windows Clients to a new Windows Feature Release via MECM Servicing or Task Sequence In-Place-Upgrade and you have the fun job of checking that In-Place-Upgrade performed as expected.
Some of those tasks may be to check the latest Drivers got injected, Applications added, removed or updated and Windows Packages and Language Packs have all been upgraded as expected. Then the scripts that follow might just help make your life that little bit easier
The set of scripts below can be added to your Windows 10 Upgrade Task Sequences that will show you the differences between, drivers, packages, Language packs and FODs before the upgrade and after an upgrade
These can be used as QA checks to ensure the Upgrade has performed as expected, or purely just something to play with
Just add the scripts before the Upgrade and the same set of scripts after the upgrade and ‘hey presto’ a set of comparison files
Setup Pre-Update Scripts

Pre Update – Drivers (Compare-Drivers)
Type : Run PowerShell Script
Script Name: Compare-Drivers.ps1
Parameters: -Action Pre-Update
PowerShell execution policy: Bypass
Pre Update – Packages (Compare-Packages)
Type : Run PowerShell Script
Script Name: Compare-Packages.ps1
Parameters: -Action Pre-Update
PowerShell execution policy: Bypass
Pre Update – Windows Packages (Compare-WindowPackages)
Type : Run PowerShell Script
Script Name: Compare-WindowPackages.ps1
Parameters: -Action Pre-Update
PowerShell execution policy: Bypass
Setup Post-Update Scripts

Post Update – Drivers (Compare-Drivers)
Type : Run PowerShell Script
Script Name: Compare-Drivers.ps1
Parameters: -Action Post-Update
PowerShell execution policy: Bypass
Post Update – Packages (Compare-Packages)
Type : Run PowerShell Script
Script Name: Compare-Packages.ps1
Parameters: -Action Post-Update
PowerShell execution policy: Bypass
Post Update – Windows Packages (Compare-WindowPackages)
Type : Run PowerShell Script
Script Name: Compare-WindowPackages.ps1
Parameters: -Action Post-Update
PowerShell execution policy: Bypass
The log files can be found in the CCM Log folder C:\Windows\CCM\Logs
_Compare-Drivers.log
_Compare-Packages.log
_Compare-WindowsPackages.log
The output has been formatted as comma-separated….meaning, if they were imported into excel, through Data – From Text/CSV or similar application then you get a clear look at column and row data, which can be sorted, ordered and filtered to your heart’s content.
Compare-Driver – Example imported into excel

Compare-Packages – Example imported into excel

Compare-WindowsPackages – Example imported into excel

The latest scripts can be found below and don’t forget to share and like this page with your colleagues and friends
https://github.com/Drakey2000/CommunityHelper/tree/master/Upgrade-Compare