In this guide, we will discuss the steps necessary for deploying Notepad++ using the PowerShell App Deployment Toolkit (PSADT). This script handles new installs, upgrades to newer versions, and uninstalls any existing or previous versions of Notepad++.

Some may find this solution a fitting substitute for third-party patching tools, eliminating the need to manage a separate application package or patching tool. Of course, this is simply a perspective, and alternatives may fit better depending on your unique scenario.

The app tip for Notepad ++ offers the most current instructions. The information may update over time, so it is advisable to keep checking the app tip library for the latest information.

Preparing the Environment

Step 1: Download PowerShell App Deployment Toolkit (PSADT)

Download the PSADT zip file to the C:\Downloads directory.

Step 2: Remove Zone Identifier

Open PowerShell with administrative rights and enter the following command to remove the Zone Identifier:

// Enter your command here

Step 3: Extract the Zip File

Use the appropriate command in the PowerShell console to extract the contents of the PSADT zip file.

Step 4: Copy PSADT Files to a New Location

Enter the necessary commands to copy the App Deploy Toolkit files and Support Files folders to the new location: C:\Downloads\Notepad++.

Preparing the Notepad++ Installers

Step 5: Download Notepad++ Installers

A dynamic script can cater to various scenarios, such as installing the 32-bit version of Notepad++ on 32-bit systems and the 64-bit version on 64-bit systems.

Download both the 32-bit and 64-bit EXE installers for Notepad++ from the official website and save them to C:\Downloads\Notepad++\Files directory.

Configuring Notepad++ Installation

Step 6: Create XML Template to Disable Notepad++ Auto Updates

This involves a manual installation of Notepad++. After the installation:

  1. Open Notepad++
  2. Navigate to the Settings tab
  3. Select Preferences
  4. Under the Miscellaneous section, uncheck “Enable Notepad++ auto updater”
  5. Click Close and then exit Notepad++

Next, navigate to the AppData\Notepad++ directory of the current user’s profile. Copy the config.xml file from the AppData\Notepad++ directory to C:\Downloads\Notepad++\Support Files. Rename the config.xml file to config.mo. This file will act as the template for all new installations.

Remember to uninstall Notepad++ manually after this.

Step 7: Save PowerShell Script

Copy the PowerShell script available in the blog post and save it to the C:\Downloads\Notepad++ directory as deploy-Notepad++.ps1.

At this stage, the heavy lifting is over, and we can proceed to install or uninstall Notepad++ using a single PowerShell script. If you are using a software deployment tool like Microsoft Endpoint Manager Configuration Manager, the contents of the C:\Downloads\Notepad++ folder would be your source files for a package or application.

Installing and Uninstalling Notepad++

This process involves executing the PowerShell script in administrative mode to install or uninstall Notepad++. The script has inbuilt logging functionality, and we can monitor the progress of the installation under C:\Windows\Logs\Software.

We can verify that the Notepad++ automatic updates have been disabled by launching Notepad++, navigating to Settings > Preferences > Miscellaneous, and checking that the auto-update checkbox has been removed.

In addition, we can silently uninstall Notepad++ by changing the deployment type parameter from install to uninstall in our PowerShell script.

Additional Functionality

The script also includes an interactive deploy mode that provides dialog boxes, progress displays, and balloon tip notifications. This mode can be useful for visual confirmation of the installation or uninstallation process.

Conclusion

Always remember to test everything in a development environment before implementing it into production. The information provided in this guide is without any warranty and is only meant to serve as a walkthrough for deploying Notepad++ with PowerShell.

Paul Cobben