Description of the problem
We have realized that it sometimes takes a long time to connect printers partly via steadyPRINT or via the Windows “devices and printers”-view. Moreover, the setting of the pre-defined default printer via steadyPRINT is delayed. After restarting the print spooler on the Client, the default printer is immediately set. Can you provide further assistance?
In this scenario, some factors are considered that should be checked on the Client.
Preinstalled drivers on the Client
If the necessary printer driver is not available on the system, it has to be installed via Windows itself or the steadyPRINT Agent. Depending on the driver size, this process might take a long time and thus delay the printer connection.
Printers are slowly connected only via the steadyPRINT Agent
The steadyPRINT Agent connects the printers by using the Windows-API. This way, it is directly dependent on its processing time. Some users report that the connection via the Windows “devices and printers”-view was much faster – generally a false conclusion. In most cases the user only connects a single printer and not several printers at the same time. In doing so, enormous delays already occur during the manual connection or deletion as well as the setting of the default printer. Furthermore, when connecting printers, the steadyPRINT Agent performs the following action which might additionally influence the performance on an inert system:
- – Validation of the existing printer(-connections)
- – Validation of the installed printer driver
- – Analysis of the printer assignments
- – Installation or update of printer drivers (optional)
- – Update of the printer connections
- – Analysis of the default printer definitions
- – Setting of the default printer
It is important to check whether the problem occurs perrmanently. To do so, proceed as follows:
- 1. Close the steadyPRINT Agent.
- 2. Delete all printer connections which the steadyPRINT Agent connects.
- 3. Start the steadyPRINT Agent
- 4. Repeat the described steps several times.
In most cases it can be observed after multiple repetitions that the processing time for connecting printers varies to a great extent in the described scenario. In most cases, this indicates that the local print spooler produces timeouts. When conntecting the printers, the steadyPRINT Agent is directly dependent on the spooler. For this reason the processing takes longer than usual. Many functions of the Windows print spooler work synchronously and thus have a blocking effect. How fast answers and Information are provided depends on the different running time factors such as the network, the print server configuration as well as the printer driver implementation, all factors which are relatively hard to determine.
Special case – Timeout during communication via complete UNC path
For the communication with the print server, steadyPRINT uses its incomplete UNC path (e.g. \\PrintServer.Domain.Local\PrinterName). If the local print spooler is not able to resolve names, timeouts often occur during the connection and deletion of printer connections as well as the setting of the default printer. In most cases the print server itself is normally accessible via Ping by using the FQDN. The described problem can be verified and reproduced according to the following steps:
- 1. Open the Windows „Devices and Printers“-view
- 2. Delete all printer connections
- 3. Open the Windows-Wizard and connect a printer via “Add Printer”
- 4. Select the option „Select assigned printer via name“
- 5. Enter the complete UNC path (e.g. \\PrintServer.Domain.Local\)
- 6. All available printers are displayed
- 7. Enter UNC path with NetBIOS names (z.B. \\PrintServer\)
- 8. All available printers are displayed
In case the printers are respectively displayed in steps 6 and 8, it can be assumed that there is no timeout when communicating via the complete UNC path. Otherwise different problems might lead to this circumstance. The following Microsoft Support article describes possible troubleshooting methods: https://social.technet.microsoft.com/Forums/windowsserver/en-US/e709d6ee-794f-440c-8a2f-203f80beadd5/cannot-add-connect-to-the-network-printer-via-fqdn-fully-qualified-domain-name-printername-?forum=winserverTS.
Moreover, Microsoft issued a hotfix which might solve the problem: http://support.microsoft.com/kb/2618574/en-us.
Timeout during print server communication due to blocked ports
For the query of all necessary information and the creation of printer connections with the print server, steadyPRINT communicates with the print server via the Windows-print spooler. In doing so, the latter uses the dynamic port for the print Server communication. (s. http://support.microsoft.com/kb/832017/en). Please make sure that all necessary ports have been activated.
Workarounds within steadyPRINT
As of version 5.1.2 you can decide if the steadyPRINT Agent communicates with the print server by using the complete UNC path. Via the Agent profiles this optio can be disabled for single or all Clients.
Furthermore, as of Version 5.1.2, the function “QuickConnect” which connects the printer via UNC path without any review will be available. This call equals a printer connection by a simple instruction via a script.
ID: sP00000 | Created on: 19-Jan-2015