Universal Print printer provisioning tool [To be deprecated soon]
Overview
Universal Print printer provisioning tool helps organizations deploy printers on users' Windows 10 devices using Microsoft Endpoint Manager.
In this document, we cover requirements, configurations and steps to use this tool.
This quick start guide explains how to enable Universal Print and set up a printer.
Important
New Universal Print CSP in Windows 11 replaces this tool. For details refer to Universal Print printer provisioning
Pre-requisites
Before using the tool, please ensure that the following steps have been completed:
Meet the requirements as per Get Started documentation.
Windows 10 devices need to have the latest Windows Update installed:
Windows 10 devices are enrolled with Microsoft Endpoint Manager
Setting-up:
Step 1: Download the Universal Print printer provisioning tool
Download all the files for Universal Print printer provisioning tool from Microsoft Download Center.
The download contains following files:
UniversalPrintPrinterProvisioning.0.1.0.0.intunewin
: This is a pre-packaged Intune Win32 app package that contains the printer provisioning tool. Using Microsoft Endpoint Manager this package needs to be deployed on all the devices where Universal Print printers need to be pre-provisioned.SamplePolicy.zip
: This ZIP folder contains two files:printers.csv
(sample): This file is an example. It may be used as a reference to create a list of printers that need to be added on the given set of users' devices.InstallPolicy.cmd
is a simple script that copies theprinters.csv
config file to the appropriate folder on users' devices.
EULA.rtf
: The tool is under preview. Your use of the software operates as consent to the terms of the End User License Agreement (EULA), which is included with the tool in the file named “EULA.rtf
”.
Step 2: Deploying the Intune Win32 app package
Using Microsoft Endpoint Manager deploy UniversalPrintPrinterProvisioning0.1.0.0.intunewin
as a Windows app (Win32) on all the target devices where printers need to be pre-provisioned.
While deploying the package, most of the fields will be pre-populated. (like Install Behavior as System). Other fields should be populated as:
- Under Requirements:
- Operating System Architecture: Select both 32-bit and 64-bit.
- Minimum Operating System: Windows 10 1903 (minimum requirement for Universal Print)
- Under Detection Rules,
- Select Rules format as Manually configure detection rules and click on Add
- Select Rule type as MSI. Corresponding fields will be auto populated.
- Under Assignments, add the device groups that contain Windows 10 devices where printers need to be pre-provisioned.
For details on how to deploy Intune application package, refer to Intune Standalone – Win32 app management: Add a Win32 app to Intune.
Step 3: Create the list of printers printers.csv
that need to be deployed on users' devices
Create a config CSV file with the list of printers. Name the CSV file as "printers.csv
".
If you need to deploy different printers for different set of users, then you will need to create one
printers.csv
config file per user group.
Printers.csv
file should contain:
Header row with three column names:
SharedID
,SharedName
,IsDefault
Have one printer per row. Printer's
SharedID
,SharedName
can be retrieved from Universal Print portal (see below image) or PowerShell.
Note
For reference, look at printers.csv
sample downloaded as part of the package (SamplePolicy\printers.csv
).
Step 4: Generate the custom Win32 application package (Intunewin file) to deploy printers.csv
Using the Microsoft Win32 Content Prep Tool create a custom Win32 application package (we will name it InstallPolicy.intunewin
- you can use your own name). This custom application package will be used to deploy printers.csv
file on users' devices.
Intune Standalone - Win32 app management: Prepare the Win32 app content for upload
Lets walk through each of the steps in detail:
Universal Print printer provisioning tool download contains a command script
"SamplePolicy/InstallPolicy.cmd"
- This script can be used (as-is) to copy theprinters.csv
file on user's device.Place the following files in a single folder:
Printers.csv
created in Step 3.- Command script (
InstallPolicy.cmd
) that was part of Universal Print printer provisioning tool download.
Download the Microsoft Win32 Content Prep Tool from GitHub as a zip file. This will download the
Microsoft-Win32-Content-Prep-Tool-master.zip
file toDownloads
folder on your device.Unzip the contents of the
Microsoft-Win32-Content-Prep-Tool-master.zip
file.Launch Command Prompt and go to the folder where Microsoft Win32 Content Prep Tool files were unzipped.
Run the
IntuneWinAppUtil.exe
command. When prompted, enter:Source folder
: The folder where list of printers (printers.csv
) andInstallPolicy.cmd
files are present.Setup file
: Path of theInstallPolicy.cmd
file (or any other script that will be used to copy theprinters.csv
file on users' devices)Output Folder
: Folder where you will like the generated intunewin package file to be stored.Do you want to specify catalog folder (Y/N)
: Enter N.
Once all the inputs are entered and you hit enter, tool will generate the intunewin package and show the following output:
The custom intunewin package
InstallPolicy.intunewin
is now generated and can be found in the output folder.
Step 5: Deploy the custom intunewin application package on users' devices
InstallPolicy.intunewin
Win32 application package needs to be deployed on users' devices using Microsoft Endpoint Manager. Here are the steps:
Launch Microsoft Endpoint Manager and go to Apps->All Apps.
Click on Add
Select app type as Windows app (Win 32)
Clicking on Select will launch a wizard.
App information - Select the custom intunewin application package (
InstallPolicy.intunewin
) generated earlier and complete the other App information.Program - Printers can be deployed either at a user level (all devices of user) or device level only.
If deploying at user level,
- Under Install command enter InstallPolicy.cmd user install
- Under Uninstall command enter InstallPolicy.cmd user uninstall
- Under Install behavior, select User
- For return codes, just keep the code type success. Rest of the return codes can be deleted.
This will copy the
printers.csv
file to %AppData%\UniversalPrintPrinterProvisioning\Configuration on users' devices.If deploying at device level,
- Under Install command enter InstallPolicy.cmd device install
- Under Uninstall command enter InstallPolicy.cmd device uninstall
- Under Install behavior, select System
This will copy the
printers.csv
file to either of the following folders depending on the device's architecture:- On x64 device:
"%ProgramFiles(x86)%\UniversalPrintPrinterProvisioning\Configuration\"
- On x86 device:
"%ProgramFiles%\UniversalPrintPrinterProvisioning\Configuration\"
For the rest of this document, we will proceed with context as user. There may be a few changes required in the steps below if you want to deploy at device level.
For Device restart behavior select No specific action.
Requirements -
- Operating system architecture: Select both 32-bit and 64-bit.
- Minimum operating system: Select Windows 10 1903 (minimum requirement for Universal Print)
Detection rules -
- Rules format: Select Manually configure detection rules
- Click on Add
- Rule type: Select File
- Path: Enter %AppData%\UniversalPrintPrinterProvisioning\Configuration
- File or folder: Enter
printers.csv
- Detection Method: Select File or folder exists
Dependencies - You can ignore this step and click on Next.
Assignments - Under Required, click on +Add group. Select the user groups to which the given list of printers in
printers.csv
needs to be deployed.Review+create - Review all the settings and click on Create
Once all the steps are complete Microsoft Endpoint Manager is ready to deploy your Universal Print printers to the target users' devices.
You can click on the corresponding intunewin app in Microsoft Endpoint Manager and check its device install status and user install status.
Monitor app information and assignments with Microsoft Intune
How are printers installed?
Step 2 above will install a background service on the Windows 10 device. Background service will listen for the "user logon" event. Second package (InstallPolicy.intunewin
) deployed in Step 5 will put the config file with list of printers on users' Windows 10 device.
When a user logs in, background service will be triggered to install Universal Print printers. It will look for the printers.csv
file. If found, then the service will add all the printers listed in the printers.csv
file to the Windows 10 device.
Note
Only printers that logged-in user has access to will be added to their device.>
Troubleshooting
If the Universal Print printers are not installed after the user logs in, check the following:
Confirm that the printers.csv file is present based on the deployment level:
- User:
- %AppData%\UniversalPrintPrinterProvisioning\Configuration
- Device:
- On x64 device: "%ProgramFiles(x86)%\UniversalPrintPrinterProvisioning\Configuration"
- On x86 device: "%ProgramFiles%\UniversalPrintPrinterProvisioning\Configuration"
If the printer defined in the printers.csv file does not install, check the PrintProvisioning event log located on the client under Applications and Services log -> Microsoft -> UniversalPrint for an Event 3 with the following text:
Description: "The system cannot find the path specified."
If you see this error, there are two possible causes.
The user does not have access to the printer.
Check the Access list for the printer in the Universal Print portal and confirm the user's account is added either directly or as part of an Microsoft Entra ID security group.
Confirm that you can manually discover and add the printer using "Add printer". If you are unable to manually add the printer, follow the troubleshooting steps under "Installing or discovering printers on client".
The printers.csv file has the PrinterID instead of the ShareID.
- Confirm that the correct ID is being used in the printers.csv file.
More resources
Video demo (@13:48): Eliminate on-premises print servers with Universal Print