Printer driver isolation is not specified

ID PE138 Level INFO Category System

Description

The executable does not specify the printer driver isolation option in the Application manifest. Printer driver isolation improves application reliability by enabling printer drivers to run in processes that are separate from the process in which the print spooler runs. That is, the application will not crash if the printer driver has an error.

Mitigation

If using Visual C++:

  • Create a separate Application manifest file if you have not done this for your application yet. This file will be used as an additional source to the default manifest generated by the Manifest tool.
  • Add the external manifest file as an additional input file to the Manifest tool (also see the screenshot below).
  • Add the printerDriverIsolation element to your Application manifest file.
Adding extra manifest

If using Visual Studio with .NET Console, WinForms, WPF projects:

  • Add the Application manifest file to your project. See the screenshot below.
  • Add the printerDriverIsolation element to your Application manifest file.
Adding manifest to C#

Arguments

This rule has no output arguments.