About this document
vSpace Pro 11 LTS and vSpace Pro Enterprise Edition provide integrated Printer Management feature in vSpace Console. By default, RX-series devices and LEAF OS devices will be set to the 'generic redirection' of printers in the firmware for the vSpace session, and 'native redirection' of printers for the Microsoft RDP session. For vSpace Pro sessions, there are additional vSpace Pro server-side configuration needs to be made for printers to work properly in the desktop virtualization environment. Please see below for more details.
Generic
USB redirection of printers
The Generic USB redirection of Printers is possible with both
protocols: UXP and RDP.
The Generic USB
redirection allows redirection of multi-function (MFD, MFP, all-in-one) devices
which, besides the printer, also offer a document scanner, memory card reader,
and/or other functionalities.
When the generic USB
redirection will be used for printers then the low-level USB communication
between the virtual USB hub created on the server-side and the USB printer
physically connected to the RX-series clients or LEAF OS device will be
redirected. The USB printer will be detected by a virtual USB host controller
or hub assigned to the user’s terminal session on the server-side. The Windows USB
printer driver necessary for the redirected printer must be installed on the
terminal server hosting the user session.
The USB printer forwarded with generic USB redirection will appear in
the Device Manager inside user’s session.
The list of Windows
printer drivers installed on a Windows machine can be obtained with following
command:
wmic /NameSpace:\\Root\CIMV2 path Win32_PrinterDriver GET
Name
The command output will be a list of installed
printer drivers with comma-separated driver properties in the form of:
Driver_name,driver_type,driver_architecture
C:\>wmic
/NameSpace:\\Root\CIMV2 path Win32_PrinterDriver GET Name
Name
Microsoft XPS Document Writer v4,4,Windows x64
ZDesigner ZT230-200dpi ZPL,3,Windows x64
Microsoft Shared Fax Driver,3,Windows x64
HP Deskjet 5520 series,3,Windows x64
The list of printers created in terminal session can be obtained with
following command:
wmic
/NameSpace:\\Root\CIMV2 path Win32_Printer GET
Caption,Comment,DriverName,PortName, PrintProcessor /value
For the USB printers
forwarded with the Generic USB redirection method the PortName property will be
like USB001.
C:\>wmic /NameSpace:\\Root\CIMV2 path Win32_Printer
GET Caption,Comment,DriverName,PortName, PrintProcessor /value
Caption=HP Deskjet
5520 series
Comment=
DriverName=HP
Deskjet 5520 series
PortName=USB001
PrintProcessor=winprint
Caption=Microsoft
XPS Document Writer
Comment=
DriverName=Microsoft
XPS Document Writer v4
PortName=PORTPROMPT:
PrintProcessor=winprint
Additional considerations for vSpace sessions
The vSpace Pro software contains the Printer Management feature, which improves the behavior of printers forwarded with the Generic USB redirection method.
Redirected printers behavior without enabling the Printer Management
Printers physically connected to NComputing thin-clients will be redirected to vSpace Pro server, but the underlying Windows operating system will be treating them in the same way as printers directly connected to the USB ports of vSpace Pro server host machine. This standard behavior includes creating a printer object with standard name (hardcoded in printer driver) and standard user access control list (ACL). Standard ACL for printer objects includes the Allow Print permission for the Everyone user group.
The above results with following disadvantages:
- All system users, no matter from what clients they are connected, are able to see all client printers and also print on them.
- In environments with multiple thin-clients with locally connected printers each users is able to see dozens of printers redirected from different thin-clients.
- In case of multiple printers of the same model the system is creating the printers with the same name and adding the Copy 1, Copy 2, … suffixes to differentiate the printers. User can potentially get a different copy of the printer assigned to his session every day.
- Printers from disconnected or logged off NComputing thin-client sessions are still visible as offline printers.
- Administrators and support personnel do not have any easy way to determine which printer belongs to what user or thin-client.
Redirected printers behavior with Printer Management enabled
The vSpace Pro server’s Printer Management feature allows the following:
- Configuring the right user access control lists on the redirected NComputing thin-client printer objects to make sure that only the user running the session on the thin-client where the printer is physically connected will be able to see and use the printer. Printers connected to other users’ clients are not visible and not accessible.
- Dynamically changing printer names to reflect the session ID, name of the logged-on user and the device name of the thin-client device. This allows the administrators and support personnel to quickly and easily identify the printers.
- Mapping printer driver names. Users can see shorter and more friendly names for some printers.
- Automatically removing offline printers.
- Using configurable rules for printer renaming, removal and becoming the default one.
Printer Management settings in vSpace Console
The Printer Management settings are available in vSpace Console for each vSpace Pro server on the ‘Home > Servers > ServerName > Settings > Peripheral Devices’ page. The Printer Management functionality depends on the USB Redirection feature, so the USB Redirection must be enabled for the Printer Management features to become available:
Enabling Printer Management
Printer Management is disabled by default. With Printer Management disabled vSpace Pro handles the printers in the standard, described above. To enable Printer Management the Enable printer management check-box must be selected. Otherwise, the Printer Management settings will have no effect.
Configuring printer renaming rules
Printers handled by Printer Management will always be renamed to include the ID of the vSpace Pro session to which the printer belongs. For example, if the ID of a user session where an HP LaserJet 4M printer is connected is 5, then the new printer name will become ‘HP LaserJet 4M (session 5)’. Following settings can be configured to additionally include user and device name when renaming the printer:
Setting
|
Function
|
Include user name
|
The user name will be
additionally included in new printer name. Printer name will become for
example: ‘HP LaserJet 4M (j_smith in session 5).
|
Include device name
|
The thin-client’s device name
will be additionally included in new printer name. Printer name will become
for example: ‘HP LaserJet 4M (from RX300-WHS01 in session 5). |
When both check-boxes will be selected then the user name and device name will be included in new printer name, which will be similar to: ‘HP LaserJet 4M (j_smith at RX300-WHS01 in session 5).
Configuring printer driver mappings
The original names of some printers created by Windows are long and sometimes contain redundant details. Printer driver mappings can be used to let the system use shorter or more user friendly printer names for USB printers redirected from NComputing thin-clients. To enable printer driver mapping the Map printer driver names check-box must be selected. The [ + ] and [ - ] buttons located above the mapping list allow adding and removing printer driver mappings:
When adding a printer driver mapping the original driver
name list shows all printer drivers installed on the managed vSpace Server.
Windows uses this name when creating a new printer. When printer driver mapping
will be enabled the vSpace Server, instead of using the original name, will
rename the printer using the name specified as ‘Mapped printer name’. For
printer drivers not present on the list the original driver name can be
specified manually.
|
|
Other printer management options
There are two other Printer Management options, which can be additionally configured:
Setting
|
Function
|
Set as default printer
|
With this option enabled the
printer redirected from NComputing thin-client will automatically become the
default printer in the user session.
|
Delete offline printers
|
Enabling this option lets
system remove the printer when it will become offline. With this option
enabled the printers will be automatically deleted when the NComputing
thin-client user will log off or disconnect the session. |
Printer Management example
Here is a real-life example of what Printer Management can do:
User session ID: 2
User name: demo1
Device name: L350-test
Include user name: enabled
Include device name: enabled
Printer driver name mapping: enabled
Mapping for the ‘HP Deskjet 5520 series’ printer driver: HP 5520
With all the above mentioned options set the access control list of a sample printer may become like the following:
The ‘demo1’ user
logged on from the L350-test thin-client, not the Everyone group, has the Print
permission on this printer. Members of the Administrators group will always see
and will be able to manage all printers. The printer has been renamed to ‘HP
5520 (demo1 at L350-test in session 2)’ according to configured printer
renaming rules and printer driver name mapping settings.
Additional considerations for RDP sessions
For proper operation of the USB printers forwarded to Remote Desktop
Session Hosts with the Generic USB redirection method and with the RDP protocol
the SuperRDP Server Pack software must
be installed on the host machine.
Native redirection of printers in Microsoft RDP sessions:
The command output will be a list of installed printer drivers with comma-separated driver properties in the form of:
Driver_name,driver_type,driver_architecture
For example:
C:\>wmic /NameSpace:\\Root\CIMV2 path Win32_PrinterDriver GET Name
Name
HP Color LaserJet CM1312 MFP PCL6 Class Driver,4,Windows x64
Canon Inkjet iP100 series,4,Windows x64
Microsoft XPS Document Writer v4,4,Windows x64
HP Deskjet 5520 series,3,Windows x64
Generic / Text Only,3,Windows x64
Canon D400-450 UFRII LT XPS,3,Windows x64
For native redirection of client printers the type 3 (Type 3 - User Mode) drivers for Windows x64 architecture should be selected. Type 4 drivers are known to cause issues with native redirection of client printers.
The list of printers created in terminal session can be obtained with following command:
For the USB printers forwarded with the Native redirection method the PortName property will be like TS001. This indicates that the printer uses a ‘terminal server’ printer port, which redirects the print jobs to a terminal server client. This is the expected behavior.
For example:
PortName like USB001 (which is not the expected behavior when trying to use the Native redirection) will indicate that the listed printer is a printer created locally on the Remote Desktop Session Host, or a printer forwarded with the Generic USB redirection method, instead of the Native method.
Cheapest GDI printers should be avoided when planning native redirection of printers. More advanced printers understanding the PCL, PostScript, and/or some other high-level page description languages are advisable and should work.
Adding a USB printer for native redirection in Microsoft RDP sessions
Follow the below steps to add a USB printer for the native redirection:
1. In the Peripheral device redirection settings settings group in the Peripherals section of Setup GUI, select the Custom general redirection policy radio-button.
2. For the Printers class select the Native (RDP only) redirection type.
7. Click the [Add] button.
The added printer will appear on the list and will be redirected to RDP sessions in RDP Client mode:
The Remote Desktop Session Host will create a session printer with the specified name and Windows driver:
Adding a network printer for native redirection in Microsoft RDP sessions
Network printers supporting the JetDirect protocol (also referred to as RAW or AppSocket protocols) can be used with native redirection.
Follow the below steps to add a network printer for the native redirection:
1. In the Peripheral device redirection settings settings group in the Peripherals section of Setup GUI select the Custom general redirection policy radio-button.
2. For the Printers class select the Native (RDP only) redirection type.
3. In the Printers for native redirection settings group click the [ + ] button.
4. Specify a printer Name. The name must not exceed 127 characters, must start with a letter and can only contain letters, digits, and the underscore ( _ ) character.
5. Select Network (JetDirect) as printer Type.
6. Provide a Network printer address. This can be an IP address, hostname, or FQDN of the network printer.
7. Specify a Windows printer driver name. This driver must be installed on the terminal server and will be used for rendering the print jobs forwarded to thin client device for local printing.
8. Click the [Add] button.
The added printer will appear on the list and will be redirected to RDP sessions in RDP Client mode:
The Remote Desktop Session Host will create a session printer with the specified name and Windows driver:
To remove a printer from the list of printers configured for native redirection select the printer on the list and click the [ - ] button. Click the [OK] button to confirm the removal when asked.