Knowledge Base - Technical Articles

Technical Article   HowTo:  Change the ArcGIS Desktop seat type for Citrix or restricted permissions environments

Article ID: 24633
Software:  ArcGIS - ArcEditor 8.1, 8.1.2, 8.2, 8.3, 9.0, 9.1, 9.2, 9.3, 9.3.1, 10 ArcGIS - ArcInfo 8.0.1, 8.0.2, 8.1, 8.1.2, 8.2, 8.3, 9.0, 9.1, 9.2, 9.3, 9.3.1, 10 ArcGIS - ArcView 8.1, 8.1.2, 8.2, 8.3, 9.0, 9.1, 9.2, 9.3, 9.3.1, 10 ArcReader 8.2, 8.3, 9.0, 9.0.1, 9.1, 9.2, 9.3, 9.3.1, 10, 10.1, 10.2, 10.2.1, 10.2.2 ArcGIS for Desktop Advanced 10.1, 10.2, 10.2.1, 10.2.2, 10.1 SP1 ArcGIS for Desktop Standard 10.1, 10.2, 10.2.1, 10.2.2, 10.1 SP1 ArcGIS for Desktop Basic 10.1, 10.2, 10.2.1, 10.2.2, 10.1 SP1
Platforms:  Windows NT 4.0, 2000, XP, Windows 7, Windows 8, Windows 8.1


Instructions provided describe how to change the ArcGIS Desktop seat type for Citrix or restricted permissions environments. Switching the ArcGIS seat type is normally accomplished using the Desktop Administrator; however, situations arise that do not lend themselves to the use of this traditional approach.

For example, in a Citrix environment, defining the ArcGIS application seat using the Desktop Administrator restricts all clients to adopt the same seat type. Another example is an environment where the user has very restricted permissions. Because changing the license type requires edit permissions to the registry, some users are not able to make this change themselves.

This document describes how to set a user environment variable to allow individual users to change to the seat type of their choice.

 The user environmental variable for the ArcGIS Desktop seat type overrides the SOFTWARE_CLASS registry key created by the Desktop Administrator.

 A valid license manager with the appropriate license for the seat type selected is required. The license manager can also be changed using a user environmental variable. See the link in the Related Information section below for more information.


Add the following user environment variable: -show me-

Instructions provided describe how to edit environment variables for various platforms.

 WARNING: The instructions below include making changes to essential parts of your operating system. It is recommended that you backup your operating system and files, including the registry, before proceeding. Consult with a qualified computer systems professional, if necessary.

Esri cannot guarantee results from incorrect modifications while following these instructions; therefore, use caution and proceed at your own risk.


Enter without quotes 'Viewer' for ArcView, 'Editor' for ArcEditor and 'Professional' for ArcInfo as the <seat_type>. Click OK twice.

    Related Information

    Created: 3/6/2003
    Last Modified: 2/9/2015

    Article Rating: (6)


    By rvrijen - 01/12/2012 4:02 AM

    Other - See details below.

    In extremely restrictive environments it is not possible to change the default environtment variable. In such cases you can do the following: * open a command prompt (start -> run -> cmd) * set the variable maually, e.g. "set ESRI_SOFTWARE_CLASS=Editor" * run ArcDesktop/Catalog/etc directly from the command prompt, e.g. "C:\Program Files\ArcGIS\Desktop10.0\Bin\ArcCatalog.exe" This procedure allows you to switch seat type even if you have no rights on the local machine at all.


    By dstanberry - 10/19/2011 7:44 AM

    The article needs to be updated.

    The article is great, and we have adopted it in our restrictive Windows7 environment. It would be nice to update the article to include the latest OS such as Windows7 and Windows Server 2008 R2 etc. It would also help if clients using ESRI source code to build applications with ESRI functionality embedded know that they need to point their application to the HKEY_CURRENT_USER\Environment\ESRI_SOFTWARE_CLASS registry key to find the current license level selected, in addition to the HKEY_LOCAL_MACHINE\SOFTWARE\... registry locations.


    By greg_baker - 10/12/2011 10:09 AM

    The article needs to be updated.

    Following these instructions works well, but I find that they are too cumbersome for most users in my organization. A simple one-line batch file may also be used to set the user environment variables with setx: setx ESRI_SOFTWARE_CLASS Viewer or setx ESRI_SOFTWARE_CLASS Editor or setx ESRI_SOFTWARE_CLASS Professional depending on which licence level the user would like. I keep all three batch files on the public desktop which works just great with ArcGIS 10 and Windows 7 (without any administrative rights!).


    By will6303 - 10/05/2011 12:00 PM

    Great article! It helped a lot!

    These steps do work and are very effective for non-admin users. The variable can be EITHER a user or a system variable, although you must be an administrator to set a system variable so if that's an option for you, you may be applying this work flow unnecessarily. This workflow is especially useful in working with batch files where a line like "SET ESRI_SOFTWARE_CLASS=VIEWER" just before a line starting ArcMap or ArcCatalog will easily allow a restricted user to set up multiple license levels. Note to comment moderator: the last comment on this page is invalid. The document DOES address changing the license, contrary to the understanding of the user nrschlj2.


    By sstenhjem - 09/15/2011 10:37 AM

    The article is incorrect or the solution didn’t work.

    I tried this on a Win7 machine. The steps are not complete. It says to "add, edit or delete a variable." I understand we need to add one, so I would click "New" instead of one of the other options above, but do I add it to User Variables or System variables for all users that may use machine? Need to be more descriptive other than add and click OK. Tell me what text to add to what field, NAME and VALUE. Thank you.


    By nrschlj2 - 08/08/2011 5:46 AM

    I would like to see a new article that discusses the topic outlined below.

    The article describes how to set the variable to determine the license level but does not discuss how a user can change it. Users often have to share ArcInfo licenses among a group, using ArcView when they don't need the extra tools. There needs to be a way for them to change without have administrative rights to edit the registry.