Integration Prints Are Sent to Wrong or Random Printers
Symptoms
When the redirection/failover system seems to misbehave, you may notice the following behavior:
- Integration prints seem to end up on random printers or attempts to print to PDF.
- The integration system seems to hang indefinitely with no errors, crashes, or log entries after the job has been submitted to the print engine.
- When Integrations try to print to a network printer, the print job ends up at a local one instead.
Applicable to
BarTender 2019 and later
Answer
While the Administration Console operates on a per-user basis, the printer settings are stored in the Advanced Printer and Driver Settings config file. By default, this file is located at:
C:\ProgramData\Seagull\BarTender\AdvancedPrinterAndDriverSettings.xml
This file is shared across all users and service contexts on the system. However, the settings can seem erratic when they involve the effective redirection sequence. By default, it uses the current user's default printer as the final stop in the sequence and Windows may change this on a whim.
The Basics of the Redirection/Failover System
The redirection/failover system settings are located in the Administation Console under the Printer Setup section. This section lists all the printers installed on the system as well as configurations and details for each printer.
Each printer will allow you to set redirection and failover conditions as well as a sequence to follow if a printer failure does occur:
You can also apply your Redirection and Failover Settings universally to all of your printers by checking the Use printer redirection and failover settings checkbox at the top of the Printer Setup section.
What is the Default Printer?
If you do not explicitly set the default printer, Windows will automatically choose the default printer according to your habits. It chooses your printer for you and this can change without your approval. This is a "smart printing" feature of Windows 10 and similar operating systems, and can potentially change the Effective Sequence if Windows changes what the default printer is.
The Windows Default printer is also set on a per-user basis which can also change the Effective Sequence depending on who is logged into the computer at the time.
Best Practices
Any checkboxes and redirections explicitly not set as default will be preserved across all users and contexts. However, by default, the redirection sequence sets it to the default printer. There is a way to preserve consistency.
- Open the Administration Console and select Printer Setup.
- In the top right-hand corner is a button labeled Default Printer. When you open this dialog, you'll see two options to manage default printers. Due to Window's "smart printing" feature, selecting the first option will cause the redirections to seem erratic.
- Using the Use BarTender default printer option will maintain a specific default printer across all users and contexts within BarTender as long as the checkbox at the bottom is checked. This setting will be saved in the config file.
About this dialog:
- You can set the Default Printer to any printer installed on the system.
- If you wish to change what the default printer is for BarTender, you can change it at any time here.
- This only changes the default printer with BarTender, not Windows.
Working With UNC or IP printers
If you are using a networked printer that is not installed on the system running the integration, the Print Scheduler may not have permission to reach this network resource. Please do the following to fix this (you must update to BarTender 2019 R5 or later to do this):
- Open up your Windows Services list by clicking on the Start Menu and typing Services
- Stop the BarTender System Service
- When asked to stop the dependent services, select OK or Yes
- Right-click on the BarTender System Service and click Properties
- Click on the Logon tab
- Tell the service to run under a user and enter a domain-level user with an account that does not change its password
- When you have typed the credentials, click OK
- Start the services in the following order:
- BarTender System Service
- Printer Maestro
- BarTender Print Scheduler
- BarTender Integration Service
If redirection continues, you can elevate the permissions on your Integration as well.
Once you set permissions in your integration file, make sure to test it and then redeploy it.