I believe one of the greatest addition to VMware View 4.5 is Location Based Printing. I have the question just popping up right and left lately (3 customers just this week), on how to get VMware View users to print to their nearest printers when they are using virtual desktops. In physical environment this was possible by applying computer policies, but when using terminal services or VDI the device used to access terminal service or Virtual Desktop might not be on the domain if even exist when using Zero Clients. Further, the user might access the same VM(Same computer name) from different locations, which make the use of Computer Policy alone not applicable.
Location Based Printing seems to be a sneaky problem since ages (Since Terminal Service came to exist). So far the only solution was to create a vbs script that execute as soon the user logon to the VM or terminal service which find the device name its running on & based on that it assign the correct printer. Keeping up & trouble shooting these scripts were always as painful as teeth pulling. To be honest till today, I did not have the exact answer, & as I promised my partners & customers to find out the solution I have done my research today. I have found out that the VMware View team has just added a great solution for this problem. Its a feature called “Location Based Printing”.
Location Based Printing will allow the VMware View admins to specify the printer the users print to based on the device they are accessing VMware View from. VMware View Location Based Printing can be setup to identify VMware View Client device based on IP Address Range, MAC Address, Computer name of the device being used to access VMware View VM. Being able to identify the client device using this wide range of parameters, it will ensure the users will always get to print to their nearest printer. To make it even more news worthy, VMware View Location Based Printing does not require any scripting or complex command line utility, its fully GUI based.
Sorry I got caught up of presenting how great is VMware View Location Based Printing due to the relief I had when I found out it was already released in VMware View 4.5. So lets see how you can configure VMware View Location Based Printing.
VMware View 4.5 Location Based Printing Setup:
Prerequisites:
■ Verify that the Microsoft MMC and the Group Policy Object Editor snap-in are available on your Active Directory server or on the domain computer that you use to configure group policies.
■ Because print jobs are sent directly from the View desktop to the printer, verify that the required printer drivers are installed on the your desktops (Update your templates).
Setting up VMware View 4.5 Location Based Printing is a three step process:
1. Create GPOs for View Group Policies
Create a GPO for the location-based group policy setting and link it to the OU that contains your View desktops.
2.Register the Location-Based Printing Group Policy DLL File:
Before you can configure the group policy setting for location-based printing, you must register the DLL file TPVMGPoACmap.dll.
3. Configure the Location-Based Printing Group Policy
To set up location-based printing, you configure the AutoConnect Location-based Printing for VMware View group policy setting. The group policy setting is a name translation table that maps printers to View desktops.
Below is how to setup VMware View Location Based Printing in more details:
1. Create GPOs for View Group Policies
1 Create an OU for your View desktops & ensure that your View desktops are located in that OU.
2 On your Active Directory server, select Start > All Programs > Administrative Tools > Active Directory Users and Computers.
3 Right-click the OU that contains your View desktops and select Properties.
4 On the Group Policy tab, click Open to open the Group Policy Management plug-in.
5 Right-click the OU and select Create and Link a GPO Here.
6 Type a name for the GPO and click OK.
The new GPO appears under the OU in the left pane.
7 (Optional) To apply the GPO only to specific View desktops in the OU:
a. Select the GPO in the left pane.
b. Select Security Filtering > Add.
c. Type the computer names of the View desktops and click OK.
The View desktops appear in the Security Filtering pane. The settings in the GPO apply only to these View desktops.
2. Register the Location-Based Printing Group Policy DLL File:
Before you can configure the group policy setting for location-based printing, you must register the DLL file TPVMGPoACmap.dll.
VMware View provides 32-bit and 64-bit versions of TPVMGPoACmap.dll in the directory install_directory\VMware\VMware View\Server\Extras\GroupPolicyFiles\ThinPrint on your View Connection Server host.
Procedure:
1. Copy the appropriate version of TPVMGPoACmap.dll to your Active Directory server or to the domain computer that you use to configure group policies.
2. Use the regsvr32 utility to register the TPVMGPoACmap.dll file.
For example: regsvr32 “C:\TPVMGPoACmap.dll”
3. Configure the Location-Based Printing Group Policy
To set up location-based printing, you configure the AutoConnect Location-based Printing for VMware View group policy setting. The group policy setting is a name translation table that maps printers to View desktops.
Procedure:
1. On your Active Directory server or on the computer that you use to configure group policies, select Start > All Programs > Administrative Tools > Active Directory Users and Computers.
2. Right-click the OU that contains your View desktops and select Properties.
3. On the Group Policy tab, click Open to open the Group Policy Management plug-in.
4. In the right pane, right-click the GPO that you created for the location-based printing group policy setting and select Edit.
The Group Policy Object Editor window appears.
5. Expand Computer Configuration, open the Software Settings folder, and select AutoConnect Location-based Printing for VMware View.
6. In the Policy pane, double-click Configure AutoConnect Location-based Printing.
The AutoConnect for VMware View Location-based Printing window appears.
7. Select Enabled to enable the group policy setting.
The translation table headings and buttons appear in the group policy window.
Warning:
Clicking Disabled deletes all table entries. As a precaution, save your configuration so that you can import it later.
8. Add the printers that you want to map to View desktops and define their associated translation rules. (Look at the Location-Based Printing Group Policy Setting Syntax Section below to find out more about how to fill out the View Desktops mapping taple). Below is a good image of how Location-Based Printing Group Policy Table look like.
9. Click OK to save your changes.
At this point you are done & you can enjoy seeing printers following your users depending on their location.
Location-Based Printing Group Policy Setting:
Location-Based Printing Group Policy Settings are almost self explanatory, though below is a small explanation of each field:
IP Range:
A translation rule that specifies a range of IP addresses.
To specify IP addresses in a specific range, use the following notation:
ip_address-ip_address
For example:
10.112.116.0-10.112.119.255
To specify all of the IP addresses in a specific subnet, use the following notation:
ip_address/subnet_mask_bits
For example:
10.112.0.0/16
Type an asterisk to match any IP address.
Note: this is the IP Address of the Device the user is using to connect to VMware View (Thin Client/Zero Client/ Thick client) not the View Desktop IP
Client Name:
A translation rule that specifies a computer name.
For example: Mary’s Computer
Type an asterisk to match any computer name.
Note: this is the Computer Name of the Device the user is using to connect to VMware View (Thin Client/Zero Client/ Thick client) not the View Desktop IP
Mac Address:
A translation rule that specifies a MAC address.
For example: 01:23:45:67:89:ab
Type an asterisk to match any MAC address.
Note: this is the MAC address of the Device the user is using to connect to VMware View (Thin Client/Zero Client/ Thick client) not the View Desktop IP
User/User Group:
A translation rule that specifies a user or group name.
For example: jdoe
Type an asterisk to match any user name or group.
Printer Name:
The name of the printer when it is mapped to the View desktop.
For example: PRINTER-2-CLR
The mapped name does not have to match the printer name on the client system.
Printer Driver:
The name of the driver that the printer uses.
For example: HP Color LaserJet 4700 PS
Important
Because print jobs are sent directly from the desktop to the printer, the printer driver must be installed on the desktop.
IP Port/ThinPrint Port:
For network printers, the IP address of the printer prepended with IP_.
For example: IP_10.114.24.1
D:
Indicates whether the printer is the default printer.
Below is a good Syntax example:
The network printer specified in the first row will be mapped to a View desktop for any client system because asterisks appear in all of the translation rule columns. The network printer specified in the second row will be mapped to a View desktop only if the client system has an IP address in the range 10.112.116.140 through 10.112.116.145
I hope this help any one looking to configure location based printing. Please note I have not wrote this post from scratch & I have heavily relied on the below resource:
VMware View 4.5 Evaluators Guide
VMware View 4.5 Whats New (My first clue was this presentation)
5 responses to “VMware View 4.5 Location Based Printing”
This is a nice how-to thanks first.
With this information we have installed one driver and thinprint policy for 5 the same printers. We want different paper and printer settings per printer, but when we change a setting for one printer this settings applies for alll the 5 printers that are sharing the same driver. Do you know this as a problem, do we something wrong, or is there a solution to have different default printer settings?
Thanks Eiad for the valuable information 🙂
Hi Safouh,
I am glad you found something to your liking on my blog.
Regards,
Eiad
I’m at a cross roads of choosing the best way to deploy over 500 network printers and do not want to do this twice. I was planning on using GPP’s in conjunction with Item Level Targeting unless this Template adds some type of adavantage, saves time or is less cumbersome to use.
Also, is there anything new reqarding this in View 5?
Thanks in adance
Rob
We wanted to do “location based printing” too, but without a must of “logoff” insted of just “disconnect” every time we change the location where to work (internal oder externally).
After weeks of support from Vmware specialists in this case we’ve got the final statement from Vmware that “location based printing” we want to use it with and without linked clones are not working properly neither in IP nor in MAC-adress based configurations. The only solution is to “logoff” then the printer is taken properly in each location.