What does the “Enable Advanced Print Features” checkbox do?
The setting “Enable Advanced Print Features” is a mysterious and often misunderstood setting in Windows printing that harkens back to the ancient days of Windows NT. When this setting is enabled then jobs are spooled in the EMF format and rendered on the print server. The option use to be called Always spool in RAW in Windows versions prior to Windows 2000 but was later renamed to “Advanced Printing Features”.
Why does PaperCut recommend disabling this setting?
When this setting is disabled, documents will spool in RAW format, which could be Postscript, PCL, or the printer’s native language. This allows PaperCut to easily read the files, which in turn enables a number of PaperCut features such as accurate page count and color detection, grayscale conversion, and watermarking.
In PaperCut MF 18.2, we introduced the ability for users to Change Print Job Settings at the device. As one example, this allows users of supported copier devices to change their color job to a grayscale one at the point of release. Changes of job attributes via this feature will also be prevented if Advanced Printing Features are left turned on. If you intend to enable the Change Print Job Settings feature, Advanced Printing Features should be disabled on all relevant print queues.
In addition to interfering with the way that PaperCut analyzes and modifies print jobs, this setting can also cause excessive load on the print server. So, we recommend turning this off if possible.
You can read more about this setting on the Microsoft website here: http://support.microsoft.com/?kbid=268093.
How do I turn this setting off?
This setting can be disabled using PowerShell (continue reading below) or it can be changed manually on a Windows print queue with the following steps:
- On the print server, Start→Settings→Printers
- Right-click on the printer and select Properties…
- Select the Advanced Tab
- Turn off (disable) the Enable advanced printing features
- Test your printing and ensure logging is continuing as normal
One other added benefit of this change is that rendering load is transferred from the server to the client (clients render the jobs into PostScript/PCL rather than the server), and hence this reduces the load on the server. It also reduced the probability of a spooler crash on the server. Because the server does not participate in rendering, a “buggy driver” will not crash at the server level. Instead any problems are only observed on a single workstation.
Client-side vs. server-side rendering is transparent to the end-user. This setting can be changed without the need for a server restart for it to be affective.
Special Note For Microsoft Clusters: To edit/change this setting on a cluster server, open Windows Explorer and navigate to
\\<cluster virtual server name>\Printers and Faxes then right-click on the printer and select
Please note: This option is grayed out when using Type 4 drivers or XPS print driver.
Is there a way to do this automatically for all my printers?
Yes! There’s no need to make this change manually on all of your print queues. Using PowerShell it’s possible to change this setting for all your printers automatically.
Open an elevated PowerShell window on your print server and run the following commands:
$printers = Get-Printer -Name *
foreach ($p in $printers)
cscript c:\Windows\System32\Printing_Admin_Scripts\en-US\prncnfg.vbs -t -p $p.name +rawonly
Categories: Troubleshooting, Windows
keywords: disable, page count problem, enabled advanced, enable, EMF, no job status, stuck job, change print job settings