What are iPrint user printers?

  • 7003285
  • 15-May-2009
  • 26-Apr-2012

Environment

Novell iPrint on NetWare and Linux 
Microsoft Windows XP Professional
Microsoft Windows 2000 Professional

Situation

Restricted users are unable to add iPrint printers.
Administrator equivalent users are able to add printers
What are iPrint user printers?
How do I enable iPrint user printers?
Why would I want to use iPrint user printers?

Resolution

What are user printers?
Traditionally, printers are installed to HKLM of the workstation's registry.  This causes installed printers to be used and seen by any user who logs into the Windows workstation.  Also, permissions to the workstation's HKLM must be granted to the user or system to install printers.  Initial releases of the iPrint client allowed only workstation printers (printers that were added to HKLM and viewed by all workstation users) to be installed.  iPrint client v1.10 (version of the iPrint client shipped with NW6SP3/NW51SP6), introduced a concept that allows printers to be installed to the user hive (HKLU) of the workstation registry. 

Installing an iPrint printer to the user hive (iPrint User Printer) creates two conditions:

1.  A windows user with low level workstation permissions is able to install an iPrint printer.
2.  iPrint User Printers are seen only by the user who installs the printer.

What are the risks associated with user printers?
While the above two conditions are desirable to some environments, there are risks associated with using iPrint user printers.  The concept of a "user printer" was introduced by Novell's iPrint product.  Microsoft had no intention of this architecture being implemented by any vendor.  Therefore, some print drivers will have problems with printers installed as user printers.  Common problems observed when using the iPrint user printer feature are:
 
1.  Missing print features:
Some print drivers enable features and components of the driver to HKLM.  User Printers will not add those registry keys during the installation of the printer, because user printers write the printer information to the HKLU portion of the Windows registry. 

2.  Printer Driver Profiles:
Printer Driver Profiles is a Novell iPrint feature which allows the administrator to predefine printer driver settings.  When the end user installs the iPrint printer to the workstation, the settings defined by the administrator will be applied to the workstation.   Unpredictable results can occur when using Printer Driver Profiles in conjunction with iPrint User Printers due to the concepts explanation in the "Missing print features" section of this TID.

3.  Slow printing:
When sending a print job or enumerating the list of printers after clicking File -> Print in an application, the name of the printer must be resolved.  Windows will attempt all print providers installed to the workstation and all configured name resolution types to find the network printer name.  Depending on the version of the Windows operating system and service pack level, this process can be slow.  Novell has worked with Microsoft to make this process be as efficient as possible.  But, because of the unintended implementation of user printers, Microsoft could not resolve the inefficiency for this printer type.  See KB 10095247 for details on that issue.

4.  Other problems:
There are a wide variety of problems introduced with installing printers only to the user hive of a Windows workstation.  Problems with certain drivers written in some non-English languages and other unexpected behaviors.  Perform a TID search with the 3 key words of: iPrint user printer, to learn about some of these problems. There are likely many other problems that have not been found or documented yet by Novell. 

5. Terminal Server:
Novell customers using Terminal Server find an advantage to using iPrint User Printers.  The advantage is that printers installed to the Terminal Server will be seen only by the user who installed that printer.  Each user who logs into the Terminal Server will have their individual, custom list of printers.  While this configuration has benefits, the same limitations listed above still apply. 

Note:  iPrint User Printers in a Terminal Server environment is not enabled through the iprint.ini, but rather in the iPrint client settings (right-click the iPrint client in the system tray, choose iPrint Client settings, choose the Terminal Services tab).

Workaround
Overcoming local Windows permission restrictions to install printers and controlling printer visibility through Windows user logons are two reasons why some administrators choose iPrint User Printers.   If your reason for wanting to use this feature is to allow Windows users with low level workstation permissions to install the printer, then Novell recommends you set AllowUserPrinters = 3.  This is explained in the iprint.ini file.
 
Novell is continuing to evaluate and improve the iPrint Client for Windows to overcome the above stated limitations.  When troubleshooting these issues, be sure to test with the latest available version of the iPrint Client for Windows.

Additional Information

The User Printer feature is enabled through the IPRINT.INI file.   On NetWare 6.5 this file is in the SYS:APACHE2\HTDOCS\IPPDOCS directory.  On NetWare 6.0 and 5.1 this file is in the SYS:LOGIN\IPPDOCS directory.   On Linux, the iprint.ini is located at /var/opt/novell/iprint/htdocs/iprint.ini.  When using Windows Terminal Server, the iPrint client ignores the iprint.ini and looks at the setting configured with the iPrint Client Settings.
 
Within the IPRINT.INI file, there is a setting called "AllowUserPrinters".  By default, this setting is 0, which means user printers are disabled; only workstation printers will be installed.  In order for user printers to be installed as User Printers, change "AllowUserPrinters" to 1 or 2.  Read the description in the IPRINT.INI file to understand the difference between the two values. 

Because user printers are installed in HKCU, these printers will move with the user if the user has a roaming profile setup.  For problems associated with user printers and roaming profiles, please see TID 10082165 titled "Unable to print to an iPrint printer and roaming user profiles." .

Online documentation referring to User Printers
Formerly known as TID# 10085484