Internet Explorer was retired on June 15, 2022
IE 11 is no longer accessible. You can reload Internet Explorer sites with IE mode in Microsoft Edge.
**WMF 5.0 RTM has been superceeded by WMF 5.1. Please download the RTM version of WMF 5.1 from http://aka.ms/wmf5download.** Windows Management Framework 5.0 includes updates to Windows PowerShell, Windows PowerShell Desired State Configuration (DSC), Windows Remote Management (WinRM), Windows Management Instrumentation (WMI). Release notes: http://go.microsoft.com/fwlink/?LinkID=717903
Important! Selecting a language below will dynamically change the complete page content to that language.
-
File Name:
WMF_5_1_Redirect.txt
Windows Management Framework (WMF) 5.0 brings functionality that has been updated from WMF 4.0. WMF 5.0 is available for installation only on Windows Server 2012 R2, Windows Server 2012, Windows 2008 R2, Windows 8.1, and Windows 7 SP1. Some of the new and updated features in this release include:
- Just Enough Administration (JEA)
- Creating Custom Types using PowerShell Classes
- Improvements in PowerShell Script Debugging
- Improvements in Desired State Configuration (DSC)
- Audit PowerShell Usage using Transcription and Logging
- Software Discovery, Install and Inventory with PackageManagement
- PowerShell Module Discovery, Install and Inventory with PowerShellGet
- PowerShell Script Discovery, Install and Management with PowerShellGet
- New and updated cmdlets based on community feedback
- Information Stream
- Generate PowerShell Cmdlets based on OData Endpoint
- Network Switch Management with PowerShell
- Software Inventory Logging (SIL)
Your feedback about Windows Management Framework 5.0 is valuable to us; we invite you to provide feedback at all times. For important information about changes in behavior from Windows PowerShell 5.0, and a list of known issues with this release, be sure to read the WMF 5.0 release notes. You can log bugs and suggestions by using the PowerShell forum within the Windows Server UserVoice.
-
Supported Operating Systems
Windows 7 Service Pack 1, Windows 8.1, Windows Server 2008 R2 SP1, Windows Server 2012, Windows Server 2012 R2
- Windows Server 2012 R2
- Windows Server 2012
- Windows Server 2008 R2 SP1
- Windows 8.1
- Windows 7 SP1
**IMPORTANT**
- Please see release notes for the list of products that are compatible and incompatible with Windows Management Framework 5.0.
- WMF 5.0 requires Microsoft .NET Framework 4.5 or above. You can install Microsoft .NET Framework 4.5 or above by following the instructions at Installing the .NET Framework.
Mar 14, 2016
Introduction
PowerShell continues to improve, many features are being added and now we have PowerShell 5 that is available for installation on Windows Server 2012 and Windows 8.1. The installation is simple and only requires a reboot. Windows Management Framework 5.0 (WMF 5) includes updates to Windows PowerShell, Windows PowerShell Desired State Configuration (DSC), Windows Remote Management (WinRM), Windows Management Instrumentation (WMI).
Windows Management Framework (WMF) 5.0 RTM brings functionality that has been updated from WMF 4.0. WMF 5.0 RTM is available for installation only on Windows Server 2012 R2, Windows Server 2012, Windows Server 2008 R2, Windows 8.1, and Windows 7 SP1 and contains updated versions or introduction of the following features:
- Windows PowerShell
- Just Enough Administration (JEA)
- Windows PowerShell Desired State Configuration (DSC)
- Windows PowerShell Integrated Scripting Environment (ISE)
- Windows PowerShell Web Services (Management OData IIS Extension)
- Windows Remote Management (WinRM)
- Windows Management Instrumentation (WMI)
WMF 5.0 RTM replaces the WMF 5.0 Production Preview. You can install WMF 5.0 RTM without uninstalling WMF 5.0 Production Preview, but you must uninstall all other older releases of WMF 5.0 previews before installing the WMF 5.0 RTM.
Process
Download WMF 5 from https://www.microsoft.com/en-us/download/details.aspx?id=50395. There are several packages to choose from for installation.
Since we are installing on Windows Server 2012 R2 in this example select Win8.1AndW2K12R2-KB3134758-x64.msu or W2K12-KB3134759-x64.msu. For my choice the winner was Win8.1AndW2K12R2-KB3134758-x64.msu. Once downloaded double-click to start the installation and reboot when prompted.
Once the system is back up check the version. Open PowerShell and type $host.version.
Conclusion
There you have it! Windows PowerShell 5 is now installed and available for you to explore the updated and new features like Windows PowerShell Desired State Configuration (DSC), which we will cover in future posts!
Trackbacks/Pingbacks
2 minute read
Microsoft just re-released the new version of Windows Management Framework (WMF) 5.0 RTM for Windows Server 2012 R2, Windows Server 2012, Windows 2008 R2 SP1, Windows 8.1, and Windows 7 SP1.
The PowerShell Team previously released WMF 5.0 RTM two months ago but it was pulled-back mainly because of the $PSmodulePath issue.
Download WMF5
ChangeLog
Changes in the republished packages
- The KB numbers of these packages (KB3134758, KB3134759, and KB3134760) are different than previously released WMF 5.0 RTM packages (KB3094174, KB3094175, and KB3094176).
- These packages have fixes only for the PSModulePath issue compared to the previously released WMF 5.0 RTM packages.
Uninstall previously released WMF 5.0 RTM packages
You must uninstall previously released WMF 5.0 RTM (KB3094174, KB3094175, and KB3094176) packages.
No impact to Windows 10 and Windows Server 2016 Technical Preview builds
Windows 10 and Windows Server 2016 Technical Previews builds are not impacted by the above mentioned PSModulePath issue. This issue was only impacting down-level systems where WMF 5.0 RTM can be installed.
To install WMF 5.0 by using Command Prompt
- After you have downloaded the correct package for your computer’s architecture, open a Command Prompt window with elevated user rights (Run as Administrator). On the Server Core installation options of Windows Server 2012 R2 or Windows Server 2012 or Windows Server 2008 R2 SP1, Command Prompt opens with elevated user rights by default.
- Change directories to the folder into which you have downloaded or copied the WMF 5.0 installation package.
- Run one of the following commands.
- On computers that are running Windows Server 2012 R2 or Windows 8.1 x64, run
Win7AndW2K8R2-KB3134760-x64.msu /quiet
- On computers that are running Windows Server 2012, run
W2K12-KB3134759-x64.msu /quiet
- On computers that are running Windows Server 2008 R2 SP1 or Windows 7 SP1 x64, run
Win7AndW2K8R2-KB3134760-x64.msu /quiet
- On computers that are running Windows 8.1 x86, run
Win8.1-KB3134758-x86.msu /quiet
- On computers that are running Windows 7 SP1 x86, run
Win7-KB3134760-x86.msu /quiet
Overview of all scenarios enabled by WMF 5.0
- New and updated cmdlets based on community feedback
- Generate Windows PowerShell cmdlets based on an OData endpoint with ODataUtils
- Manage
.ZIP
archives through new cmdlets - Interact with symbolic links using improved Item cmdlets
- Network Switch management with Windows PowerShell
- DSC authoring improvements in Windows PowerShell ISE
- 32-bit support for the configuration keyword in DSC
- Audit Windows PowerShell usage by transcription and logging
- Extract and parse structured object out of string content
- Configure DSC’s Local Configuration Manager with the meta-configuration attribute
- Configure piece by piece with partial configurations in DSC
- Manage with cross-computer dependencies in DSC
- More control over configurations in DSC
- Find more detail about configuration status in DSC
- Support for
-?
during DSC configuration compilation - Support for DSC
RunAsCredential
- Rich information for DSC LCM State
- Side-by-Side installation of DSC Resources
- PSDesiredStateConfiguration Module version updated to 1.1
- Discover and install software with PackageManagement
- Discover modules and DSC resources with PowerShellGet
- Develop with classes in Windows PowerShell
- More control and remoting in Windows PowerShell Debugging
- Report configuration status from DSC to a central location
- Software Inventory Logging.
Resources
-
PowerShell Team Blog Article
-
Get WMF5 on Microsoft Download
-
MSDN Documentation WMF 5.0 RTM Release Notes Overview
Introduction
Windows Management Framework (WMF) 5.1 is a powerful set of tools that allow administrators to manage Windows systems from the command line. It includes Windows PowerShell 5.1, Windows Remote Management (WinRM) 5.1, and Windows Management Instrumentation (WMI) 5.1. WMF 5.1 provides a comprehensive set of cmdlets, providers, and host applications that enable administrators to manage Windows systems from the command line. It also provides a scripting language that allows administrators to automate tasks and create powerful scripts. WMF 5.1 is available for Windows 7, Windows 8.1, Windows 10, Windows Server 2008 R2, Windows Server 2012, and Windows Server 2016. In this guide, we will discuss how to install WMF 5.1 on Windows systems.
Installing Windows Management Framework 5.1 Powershell on Windows 10 is a simple process. This guide will provide step-by-step instructions on how to install the framework.
Before beginning the installation process, it is important to ensure that your system meets the minimum requirements for the installation. The minimum requirements are as follows:
• Windows 10 version 1607 or later
• .NET Framework 4.5 or later
• Windows PowerShell 2.0 or later
Once you have confirmed that your system meets the minimum requirements, you can begin the installation process.
Step 1: Download the Windows Management Framework 5.1 package from the Microsoft Download Center.
Step 2: Once the download is complete, double-click the package to begin the installation process.
Step 3: Follow the on-screen instructions to complete the installation.
Step 4: Once the installation is complete, you can open Windows PowerShell and verify that the installation was successful by typing “$PSVersionTable” and pressing enter.
Congratulations! You have successfully installed Windows Management Framework 5.1 Powershell on Windows 10.
What are the Benefits of Installing Windows Management Framework 5.1 Powershell?
Installing Windows Management Framework 5.1 Powershell offers a number of benefits to users. This version of Powershell provides users with a more secure and reliable scripting environment. It also offers a number of new features and capabilities, such as improved performance, enhanced security, and improved compatibility with other Windows applications.
One of the most significant benefits of installing Windows Management Framework 5.1 Powershell is the improved performance it offers. This version of Powershell is designed to be faster and more efficient than previous versions, allowing users to complete tasks more quickly and efficiently. Additionally, the improved performance also helps to reduce the amount of time it takes to complete tasks, allowing users to get more done in less time.
Another benefit of installing Windows Management Framework 5.1 Powershell is the enhanced security it provides. This version of Powershell includes a number of security enhancements, such as improved authentication and authorization, improved logging and auditing, and improved encryption. These security enhancements help to protect users from malicious attacks and unauthorized access to their systems.
Finally, Windows Management Framework 5.1 Powershell also offers improved compatibility with other Windows applications. This version of Powershell is designed to be compatible with a wide range of Windows applications, allowing users to easily integrate their scripts and commands into their existing Windows environment. This improved compatibility helps to ensure that users can easily access and use their scripts and commands without any compatibility issues.
Overall, installing Windows Management Framework 5.1 Powershell offers a number of benefits to users, including improved performance, enhanced security, and improved compatibility with other Windows applications. These benefits make this version of Powershell an ideal choice for users who need a secure and reliable scripting environment.
Exploring the New Features of Windows Management Framework 5.1 Powershell
Windows Management Framework (WMF) 5.1 is the latest version of Microsoft’s powerful scripting and automation platform. It provides a comprehensive set of tools and features that enable users to manage their Windows-based systems more efficiently. This article will explore the new features of WMF 5.1 Powershell and how they can be used to improve system management.
One of the most notable new features of WMF 5.1 is the introduction of the PowerShell Desired State Configuration (DSC) feature. This feature allows users to define the desired state of their systems and then use PowerShell to ensure that the system remains in that state. This is especially useful for managing large-scale deployments, as it allows administrators to quickly and easily configure and maintain systems in a consistent state.
Another new feature of WMF 5.1 is the ability to manage Windows Containers. This feature allows users to create and manage Windows Containers, which are isolated environments that can be used to run applications in a secure and isolated environment. This feature is especially useful for running applications in a secure and isolated environment, such as in a cloud environment.
The WMF 5.1 also includes a number of other new features, such as the ability to manage Windows Server roles and features, the ability to manage Windows PowerShell scripts, and the ability to manage Windows PowerShell Desired State Configuration (DSC). Additionally, the WMF 5.1 includes a number of new cmdlets that allow users to manage Windows Server roles and features, as well as Windows PowerShell scripts.
Overall, the new features of WMF 5.1 Powershell provide users with a powerful and comprehensive set of tools and features that enable them to manage their Windows-based systems more efficiently. With the introduction of the PowerShell Desired State Configuration (DSC) feature, users can now define the desired state of their systems and then use PowerShell to ensure that the system remains in that state. Additionally, the ability to manage Windows Containers and Windows Server roles and features, as well as Windows PowerShell scripts, provides users with a powerful and comprehensive set of tools and features that enable them to manage their Windows-based systems more efficiently.
Troubleshooting Common Issues with Windows Management Framework 5.1 Powershell
Windows Management Framework (WMF) 5.1 is a powerful tool for managing Windows systems. It provides a comprehensive set of cmdlets, modules, and scripts for managing Windows systems. However, like any other software, it can sometimes experience issues. This article will provide an overview of some of the most common issues with WMF 5.1 PowerShell and how to troubleshoot them.
1. PowerShell is not Recognizing the WMF 5.1 Cmdlets:
If you are trying to use a WMF 5.1 cmdlet and it is not being recognized, the first thing to do is to check if the WMF 5.1 package is installed on your system. To do this, open PowerShell and type “Get-WindowsFeature”. If the “Windows Management Framework 5.1” feature is not listed, then you need to install it.
2. PowerShell is Not Recognizing the WMF 5.1 Modules:
If you are trying to use a WMF 5.1 module and it is not being recognized, the first thing to do is to check if the WMF 5.1 package is installed on your system. To do this, open PowerShell and type “Get-WindowsFeature”. If the “Windows Management Framework 5.1” feature is listed, then you need to import the module. To do this, type “Import-Module ”.
3. PowerShell is Not Recognizing the WMF 5.1 Scripts:
If you are trying to use a WMF 5.1 script and it is not being recognized, the first thing to do is to check if the WMF 5.1 package is installed on your system. To do this, open PowerShell and type “Get-WindowsFeature”. If the “Windows Management Framework 5.1” feature is listed, then you need to make sure that the script is in the correct location. The default location for WMF 5.1 scripts is “C:Program FilesWindowsPowerShellScripts”.
4. PowerShell is Not Recognizing the WMF 5.1 Aliases:
If you are trying to use a WMF 5.1 alias and it is not being recognized, the first thing to do is to check if the WMF 5.1 package is installed on your system. To do this, open PowerShell and type “Get-WindowsFeature”. If the “Windows Management Framework 5.1” feature is listed, then you need to make sure that the alias is in the correct location. The default location for WMF 5.1 aliases is “C:Program FilesWindowsPowerShellAliases”.
5. PowerShell is Not Recognizing the WMF 5.1 Snap-Ins:
If you are trying to use a WMF 5.1 snap-in and it is not being recognized, the first thing to do is to check if the WMF 5.1 package is installed on your system. To do this, open PowerShell and type “Get-WindowsFeature”. If the “Windows Management Framework 5.1” feature is listed, then you need to make sure that the snap-in is in the correct location. The default location for WMF 5.1 snap-ins is “C:Program FilesWindowsPowerShellSnap-Ins”.
These are some of the most common issues with WMF 5.1 PowerShell and how to troubleshoot them. If you are still having issues, it is recommended that you contact Microsoft Support for further assistance.
How to Use Windows Management Framework 5.1 Powershell for Automation
Windows Management Framework (WMF) 5.1 is a powerful tool for automating tasks in Windows. It is a set of command-line tools and scripting languages that allow users to manage Windows systems from the command line. With WMF 5.1, users can automate tasks such as creating and managing users, configuring services, and managing Windows updates.
To use WMF 5.1 for automation, users must first install the framework on their Windows system. This can be done by downloading the WMF 5.1 installer from the Microsoft website and running it on the system. Once the installation is complete, users can begin using the framework for automation.
The first step in using WMF 5.1 for automation is to create a PowerShell script. PowerShell scripts are written in the PowerShell language and are used to automate tasks. To create a PowerShell script, users must first open the PowerShell ISE (Integrated Scripting Environment) application. This application provides a text editor and a command-line interface for writing and running PowerShell scripts.
Once the script is written, users can run it by typing the command “.scriptname.ps1” in the PowerShell ISE command-line interface. This will execute the script and any tasks that it contains.
WMF 5.1 also provides a number of cmdlets (command-lets) that can be used to automate tasks. Cmdlets are pre-defined commands that can be used to perform specific tasks. For example, the “Get-Service” cmdlet can be used to retrieve information about a service on the system.
Finally, users can use the PowerShell Remoting feature to run scripts and cmdlets on remote systems. This allows users to automate tasks on multiple systems from a single machine.
By using WMF 5.1, users can automate a wide range of tasks on their Windows systems. This can save time and effort, and make managing Windows systems easier.
Best Practices for Securing Windows Management Framework 5.1 Powershell
Windows Management Framework 5.1 (WMF 5.1) is a powerful tool for managing Windows systems. It provides a comprehensive set of cmdlets and other tools for managing Windows systems, including Windows PowerShell, Windows Remote Management (WinRM), Windows Management Instrumentation (WMI), and Windows Event Forwarding (WEF). As with any powerful tool, it is important to ensure that WMF 5.1 is properly secured to prevent malicious actors from exploiting it. Here are some best practices for securing WMF 5.1 PowerShell:
1. Use the latest version of WMF 5.1: WMF 5.1 is regularly updated with security patches and other improvements. It is important to ensure that you are running the latest version of WMF 5.1 to ensure that you have the latest security features.
2. Use strong passwords: Passwords are the first line of defense against malicious actors. It is important to use strong passwords that are difficult to guess and contain a combination of upper and lowercase letters, numbers, and special characters.
3. Enable two-factor authentication: Two-factor authentication adds an extra layer of security by requiring users to provide two pieces of evidence to prove their identity. This can help prevent malicious actors from gaining access to your system.
4. Use secure protocols: WMF 5.1 supports a variety of secure protocols, such as HTTPS and SSH. It is important to use these secure protocols to ensure that your data is encrypted and secure.
5. Monitor and audit PowerShell activity: It is important to monitor and audit PowerShell activity to ensure that malicious actors are not exploiting WMF 5.1. This can be done by using a tool such as PowerShell Auditing.
By following these best practices, you can ensure that WMF 5.1 PowerShell is properly secured and that malicious actors are unable to exploit it.
Q&A
Q1: What is Windows Management Framework 5.1 Powershell?
A1: Windows Management Framework 5.1 Powershell is a set of command-line tools and scripting language designed for system administration tasks. It includes the Windows PowerShell, Windows PowerShell ISE, Windows PowerShell Web Services, Windows Remote Management, Windows Management Instrumentation, and Windows PowerShell Desired State Configuration.
Q2: What are the benefits of using Windows Management Framework 5.1 Powershell?
A2: Windows Management Framework 5.1 Powershell provides a powerful and flexible scripting language for automating system administration tasks. It also provides a consistent way to manage Windows-based systems, including servers, desktops, and mobile devices.
Q3: How do I install Windows Management Framework 5.1 Powershell?
A3: Windows Management Framework 5.1 Powershell can be installed using the Microsoft Web Platform Installer. You can also download the Windows Management Framework 5.1 package from the Microsoft Download Center.
Q4: What versions of Windows are supported by Windows Management Framework 5.1 Powershell?
A4: Windows Management Framework 5.1 Powershell is supported on Windows 7, Windows 8.1, Windows 10, Windows Server 2008 R2, Windows Server 2012, and Windows Server 2016.
Q5: What are the system requirements for Windows Management Framework 5.1 Powershell?
A5: The system requirements for Windows Management Framework 5.1 Powershell are as follows: .NET Framework 4.5 or higher, Windows PowerShell 2.0 or higher, and Windows Remote Management 2.0 or higher.
Q6: Is there any documentation available for Windows Management Framework 5.1 Powershell?
A6: Yes, Microsoft provides extensive documentation for Windows Management Framework 5.1 Powershell, including tutorials, reference guides, and technical articles. You can find this documentation on the Microsoft TechNet website.
The Need
Last week I decided I needed to get to know the new features that come with DSC in the new Windows Management Framework 5.0 (aka PowerShell 5.0) April Preview release (available to download here). I figured I’d also need to look at updating my DSCTools module to use the new features as well. But first up I’d need to update all my lab machines with the WMF 5.0 update. Being a proper lazy nerd I thought I’d just automate it.
The Problem
After downloading the .MSU file for installing WMF 5.0 from Microsoft I decided that WSUS would be the proper way to get this out to all my machines. Nope. Wrong! WSUS only supports pushing updates that appear in the Microsoft Update Catalogue (looking for Windows Management Framework) – but no update packages greater than Windows Management Frameworks 2.0 are available in the catalogue:
Where is PowerShell 5.0? Or 4.0? Or 3.0?
As an aside after doing a bit of reading on the reason for this it appears that updating to later versions of PS can cause problems with some applications and so it is kept as a manual process.
Next on the drawing board was push the update out using GPO’s software installation policies – except it only supports MSI files. So that won’t work (although converting an MSU to an MSI might be possible according to some sources).
The Solution
Finally I settled on pushing the MSU onto the machines by using a GPO Startup Script – of the PowerShell flavour of course. It seemed like I could just adapt the PS script I wrote for installing Office 2013 via GPO. After a bit of coding I had the update installing (in silent mode of course).
The next problem was that I needed some sort of registry key that could be checked to see if the update was already installed so it didn’t try to repeatedly reinstall every time the computer started up. I spent a few hours hunting around for information on where in the registry a record of installed updates was kept and couldn’t seemed to find any.
So instead I just used a simple WMI query to find out if the update was installed:
get-wmiobject -Class win32_QuickFixEngineering -Filter "HotfixID = 'KB2908075'"
The above command will return a list of KBs installed with a matching HotfixID. There will be 0 if the KB is not installed, so to use it I needed to count the objects returned:
(get-wmiobject -Class win32_QuickFixEngineering -Filter "HotfixID = 'KB2908075'" | Measure-Object).Count -gt 0
If the MSU or EXE (did I mention this script will work with hotfixes in EXE form) did indeed need installing the script just builds a command line and calls it:
If ([io.path]::GetExtension($InstallerPath) -eq '.msu') { [String]$Command="WUSA.EXE $InstallerPath /quiet /norestart)" [String]$Type="MSU $KBID" } else { [String]$Command="$InstallerPath /quiet /norestart" [String]$Type="EXE $KBID" } # Call the product Install. & cmd.exe /c "$Command" [Int]$ErrorCode = $LASTEXITCODE
The Script
So after putting all the pieces together I had a finished script that seemed to do exactly what I needed. It can be downloaded from the Microsoft Script Center PowerShell Scripts to Install Application (EXE) or Update (MSU) using GPO. It is also available in my GitHub repo (edit: I moved this out of my generic PowerShell tools repo and into it’s own repo).
Warning
Before getting started, I strongly suggest you read my post about the problems encountered using PowerShell parameters in GPO here. There are some really annoying issues with PowerShell script parameters in GPO that will have you tearing your hair out – luckily I tore my hair out for you.
Using It
- Download the PowerShell Scripts to Install Application (EXE) or Update (MSU) using GPO from Microsoft Script Center.
- Download the MSU/EXE update file and put it in a shared folder all of your machines can get to. I used \\plague-pdc\Software$\Updates\WindowsBlue-KB3055381-x64.msu
- Create a new GPO that will be used to install the update – I called mine Install WMF 5.0 Policy:
- Locate the Startup setting under Computer Configuration/Policies/Windows Settings/Scripts:
- Double click the Startup item to edit the scripts and select the PowerShell Scripts tab:
- Click the Show Files button and copy the Install-Update.ps1 file that was in the zip file downloaded from Microsoft Script Center into this location:
- Close the folder and go back to the Startup Properties window and click the Add button.
- Set the Script Name to Install-Update.ps1.
- Set the Script Parameters to be the following (customized the bold sections to yourenviroment):
-InstallerPath "\\plague-pdc\Software$\Updates\WindowsBlue-KB3055381-x64.msu" -KBID "KB3055381" -LogPath \\plague-pdc\LogFiles$\
Note: You can leave off the -LogPath parameter if you don’t want to create logs stating if the update was installed correctly on each machine.
- Click OK.
- Click OK on the Startup Properties window.
- Close the GPME window and assign the policy to whichever OUs you want to try WMF 5.0 out on.
That was probably a lot more detail than most people needed, but I thought I throw it in there just in case.
If you require more details on the parameters available in the script, use the PowerShell cmdlet Get-Help .\Install-Update.ps1 in the folder that Install-Update.ps1 is installed into – or just look at the PowerShell Scripts to Install Application (EXE) or Update (MSU) using GPO Microsoft Script Center page.
Installing an Application Script
While I was at it I also decided that I wanted to install applications contained in an EXE by this method too (Notepad++ was my excuse). This required a slightly different approach to detect if the application was already installed. Basically depending on the application a registry key and/or value needs to be checked to see if the application needs installation. These registry entries differ for every application being installed so which keys to check for an app need to be passed in via parameters to the PowerShell script.
For example, for Notepad++ version 6.7.8.2 the registry key HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\Notepad++ must exist and requires a string value called DisplayVersion to be equal to “6.7.8.2”.
I also wrote a script, Install-Application.ps1 to do all this as well, and it is available in the same package as the Install-Update.ps1 script. I will write a separate blog post on using this one as it can be a little bit trickier thanks to the limitations with passing parameters to PS scripts in GPOs. So I’ll leave this post till next week.
Thanks for reading!