Terminal Services - Frequently Asked Windows Terminal Services Questions!

[12] Frequently Asked Asp Questions!
Updated: Jun 07, 2000
[188] Frequently Asked Citrix Questions!
Updated: Oct 10, 2006
[3] Frequently Asked Sco Tarentella Questions!
Updated: Aug 16, 2002
[260] Frequently Asked Windows Terminal Services Questions!
Updated: Aug 03, 2006
1 2 3 4 [5] 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
Do Windows XP and Windows 2000 Professional have built-in Terminal Services CALs? 

No, Microsoft`s desktop operating system products (including Windows XP and Windows 2000 Professional) do not have a "built-in" Terminal Services CAL. Rather, the Windows 2000 server issues machines running Windows 2000/XP Professional with a free Terminal Services CAL from its built-in pool (and its use is permitted under the Windows 2000 Server EULA). Windows XP Professional is a successor to Windows 2000 Professional, and as a result does not need a Terminal Services CAL to access a Windows 2000 Server running Terminal Services. However, Windows XP Home Edition is not a successor to Windows 2000 Professional (rather, it is a successor to Windows Millennium Edition) and therefore does require a Terminal Services CAL in order to access Windows 2000 Terminal Services.

Do I need to purchase a Terminal Services CAL for each machine that is running a validly licensed copy of Windows XP Home Edition and connected to a Windows 2000 Terminal Server? 

Yes, all Microsoft operating system products (except for Windows 2000 Professional and Windows XP Professional) require a Terminal Services CAL to access a Windows 2000 Terminal Server. Yes, all Microsoft operating system products (except for Windows 2000 Professional and Windows XP Professional) require a Terminal Services CAL to access a Windows 2000 Terminal Server.

What are the new features of .Net Remote Desktop for Administration? 
This is taken from: http://www.microsoft.com/windows.netserver/evaluation/overview/technologies/terminalserver.mspx

New Features and Improvements

Terminal Server is the foundation for building an enterprise-wide, server-based computing platform, and includes significant enhancements in Windows .NET Server 2003.

Feature Description
Increased Scalability Enterprises need the ability to scale-up and scale-out. Terminal Server supports more users on each high-end server than Windows 2000; and Session Directory in Windows .NET Server 2003, Enterprise Edition provides support for Microsoft`s network load balancing and other third-party load balancing technologies.
Improved Manageability Terminal Server provides unsurpassed remote manageability by taking advantage of technologies like Group Policy.

Complete remote management capabilities are available through a comprehensive read/write Windows Management Instrumentation (WMI) provider.
Easy-to-use Remote Desktop Connection Remote Desktop Connection (the new "Terminal Services Client") is an RDP 5.1 client that features a much improved user interface, enabling users to save connection settings, easily switch between windowed and full screen mode, and to dynamically alter their remote experience to match the available bandwidth.
Enhanced Remote Desktop Protocol (RDP) When connecting to a terminal server using an RDP 5.1 client, many of the local resources are available within the remote session, including the client file system, smart cards, audio (output), serial ports, printers (including network), and the clipboard.

These redirection facilities allow users to easily take advantage of the capabilities of their client device from within the remote session. For instance, files can be opened, saved and printed to the users local PC, regardless of whether the application is running locally or remotely.
Greater Color Depth and Screen Resolution With RDP 5.1, color depth can be selected from 256 colors (8-bit) to True Color (24-bit), and resolution can be set from 640 x 480 up to 1600 x 1200. For example, an IT administrator can use Terminal Server to support store kiosks displaying merchandise. They can be set to provide true color images for the best product image.
Additional Windows .NET Server 2003 Enhancements Terminal Server takes advantage of many Windows .NET Server 2003 features, such as software restriction policies, roaming profile enhancements, and new application compatibility modes.


Terminal Server builds on the foundation of Windows 2000 Terminal Services by providing organizations with a more reliable, more scalable, and more manageable server-based computing platform. Terminal Server offers new options for application deployment, more efficient access to data over low bandwidth, and enhances the value of legacy and new, lighter-weight devices. Whether using third-party add-ons or not, administrators and users will appreciate the new capabilities delivered by Terminal Server.

What is Remote Desktop for Administration? 

Terminal Services Remote desktop is now called Remote Desktop for Administration
in Windows .Net Server. It supports the RDP 5.1 feature set.

Occasionally I get a file called TSallusr.dat in my users Profiles on my Windows NT Terminal Server What is this file and where does it come from? 
Thanks to Jim Hathaway for digging this info up from a google group...

Found this post on a google group . . . perhaps it may shed some light
on this.

The TsAllUsr.Dat controls the All User profile(profile directory
structure). The unwanted entries in all-user-start-menu were most like put there but
application during there install. To clear out this mess go to
%systemroot%\Profiles\All User\Programs\Starup\ and delete all the
unwanted entries.

Also found this . . .which refrences a non-posted MS tech article on the
subject, it is for TSE but may also help in understanding what this file
is for.


For some strange reason, the desktop setings happen to be the same for
all users, so if one creates shortcuts, everyone who logs in afterwords
gets the  same bunch of shortcuts on the desktop.  Can anyone tell me the reason
for this?

I had the same error on my Terminalserver. The problem appeared after
installing SP5. I called microsoft support and they had a draft
knowledge base report. Here is the information I recieved:

Terminal Server - TsAllUsr.dat writing to all users area      [idea]
ID: Q240284    CREATED: 24-AUG-1999   MODIFIED: 10-NOV-1999

!!! CAUTION !!!
This is NOT A FINISHED ARTICLE! It is a rough draft idea for a KB
article, and as such, may not have been properly written, tech reviewed, or
edited. Please do not comment on this article in KBQuery.
keyword: KBIDEA terminalsvr
!!! CAUTION !!!

The information in this article applies to:

- Microsoft Windows NT Server version 4.0, Terminal Server Edition

A roaming profile is being copied into the all users directory on WTS.
This may occur with one or more users. When the effected user logs onto WTS
all of that user`s roaming profile settings in winnt/profiles/%username% are
being copied into winnt/profiles/all users. When the user logs off all
personal settings are lost from roaming profile and the users personal settings remain in
the all users directory. When other clients log into terminal server they get
the effected user`s personal settings in the all users portion of the start
menu, including trying to execute items in the effected user`s startup

The problem is caused by the presence of a file called TsAllUsr.dat in
the usersprofile. This file specifies the contents of the all users section
in terminal server.

Removing the TsAllUsr.dat file from the profile and any cached copies of
the profile resolves the problem.

TsAllUsr.dat can be created in 2 ways. TsAllUsr.exe will create the file
for use in terminal server administration. This file and documentation,
TsAllUsr.txt, both ship with terminal server in a compressed state and
neither are uncompressed by default. Contents of TsAllusr.txt:
Syntax: c:\temp\tsallusr { /c } - Use with out parameter to capture a
snapshot of the Current User start menu. - Use with /c to copy any
changes from the snapshot to the All Users start menu. The TsAllUsr program is a
temporary stand-alone application that contains functionality which will be added to the
change user program. If you run TsAllUsr without any parameters, it will take a
snapshot of the Current User`s Start Menu. (This is saved in a file in the
%userprofile% directory.) Later, this functionality will be moved to "change user
/install". Next, install the application. The application will
add/update the Current User`s Start menu. After the installation has completed, use "TsAllUsr
/c" to move new or updated Start menu shortcuts from the Current User Start
menu to the All Users start menu. TsAllUsr also adds read permission for
This functionality will be moved to "change user /execute".

The second way that TsAllUsr.dat appears to be created is that terminal
server tries to resolve the INF files listed in the
registry key. If this key doesnot exist or if terminl server is unable
to resolve the .INF file then it will create the TsAllUsr.dat file in the profile of
the logged on user.
I am having problems killing a process using the Kill command. What else can I do? 

Try the below free utility written by Mark Lee Of Wizbang called Superkil.exe.
Click here toDownload Superkil.exe
Unzip the file and put in your path. At a command line you type:

Superkil PID

Where PID is the process ID number of the process you want to kill.

How do I change file type associations in Windows 2000 Terminal Services? 
You can  change file type associations only in the admin mode version of WTS or you can perform the following in
user mode from MS KB Q257592

On computers running Windows 2000 Terminal Services, the UI is locked down so that no one can change
file type associations (not even administrators). This is done so that you can only edit the entries
programmatically or by using MSI-based applications. This ensures that an inadvertent change in the
UI does not effect the global file type associations across the computer running Terminal Services
and all of its users.

You can enable this functionality by changing the following registry entry:

WARNING: If you use Registry Editor incorrectly, you may cause serious problems that may
require you to reinstall your operating system. Microsoft cannot guarantee that you can
solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.

Changing this key from its default value of 00000001 enables the File Types dialog box
to function just as it does for other Windows 2000 configurations. Administrators and
Power Users can change the global file type settings for the computer and all of its users.

Currently, there is no way through the UI to change or edit the user-specific file type
associations stored in the HKEY_CURRENT_USER\SOFTWARE\Classes registry key. If you want
to do this, you have to directly edit the registry or develop your own UI to gain access
to this information.
(You can also send an e-mail message to mswish@microsoft.com to request a release of such a tool.
If enough requests are received, a tool may be released in a future resource kit or supplement.)
webmaster comment:
So in theory the thing to do is change the registry key, give your user power user priveleges,
have them fix the associations, take away the power user privelege and change the registry key back
to it`s original entry.  I am not certain if making the change in change user /install mode as it worked
in Windows NT as an admin will affect all users or not but you can also try that.
Why do I receive an ngina.dll error when I use Windows XP`s Remote Desktop feature to attempt to connect to a remote machine running Lotus Notes 5? 

Lotus Notes 5 includes a Client Single User Logon option that lets
a user access Lotus Notes without entering a password. Systems that
use this feature run the Lotus Notes version of ngina.dll. When you
attempt to connect to such a system, an incompatibility with the XP
Remote Desktop version of ngina.dll results in the following error:

"You cannot initiate a Remote Desktop Connection because the Windows
logon software on the remote computer has been replaced by
incompatible software ngina.dll.

To correct this problem, please have the administrator of the remote
computer contact the program vendor for a version that is compatible
with Windows."

Lotus Notes always installs its own version of ngina.dll but only
enables this file when you use the Client Single User Logon option.
This option is set in the registry at the
NT\CurrentVersion\Winlogon\GinaDLL registry subkey.

To resolve the error, uninstall then reinstall Lotus Notes 5 without
enabling the Client Single User Logon option. Although you might be
tempted to simply delete the GinaDLL registry value, this action will
corrupt the Lotus Notes single user logon feature.

HOW TO: Disconnect a Session by Using the TSDISCON Command in Windows 2000 Terminal Services 

PSS ID Number: Q321705

Article Last Modified on 08-6-2002

The information in this article applies to:

  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional



This article describes how to disconnect a Terminal Services session by using the tsdiscon command in Windows 2000 Terminal Services.

You can use the tsdiscon command to disconnect an active Terminal Services session. The session remains attached to the Terminal Services server in a disconnected state. Programs that are currently in use continue to run. When you reconnect to the Terminal Services server, you can reconnect by using the same session from which you disconnected. You can resume working without any loss of data in the programs that were running when you disconnected.

back to the top

Description of the TSDISCON Command

The tsdiscon command uses the following syntax:
tsdiscon SessionID | SessionName [/server: ServerName] /v
The parameters that are used by the tsdiscon command are:
  • SessionID: Use this parameter to specify the ID of the session that you want to disconnect. To determine the ID of the session that you want to disconnect, use the query session command.

  • SessionName: Use this parameter to specify the name of the session that you want to disconnect. To determine the name of the session that you want to disconnect, use the query session command.

  • /server: ServerName: Use this parameter to specify the Terminal Services server that hosts the session that you want to disconnect. If you omit this parameter, the current Terminal Services server is specified.

  • /v: Use this parameter to display information about the actions that are being performed.

NOTE: You can disconnect your own sessions, but if you want to disconnect another user`s session, you must have Full Control access permissions. You cannot disconnect the console session.

back to the top

How to Disconnect a Terminal Services Session

This is an example of how to use the tsdiscon command to disconnect a session on the current Terminal Services server:
  1. In a Terminal Services session, click Start, and then click Run.
  2. Type cmd, and then click OK.
  3. Determine the name or ID of the session that you want to disconnect. To do so, type query session, and then press ENTER. You see a list of information about the sessions on the current Terminal Services server. The list may be similar to:

     console      administrator       0   active   wdcon   
     rdp-tcp                      65536   listen   rdpwd
    >rdp-tcp#1    user1               1   active   rdpwd
     rdp-tcp#2    user1               2   active   rdpwd
     rdp-tcp#3    user2               3   active   rdpwd
     rdp-tcp#4    user3               4   disc     rdpwd  
     rdp-tcp#5    user1               5   disc     rdpwd
                                      6   idle
                                      7  idle 
    Note that in this example, the name of the current session is rdp-tcp#1, the session ID is 1, and it is owned by user1.
  4. To disconnect the current session, type the following line at the command prompt, and then press ENTER:

  5. To disconnect session 2 by using the session ID, and to display information about the disconnect operation, type the following line at the command prompt, and then press ENTER:

    tsdiscon 2 /v
    You see the following line and session 2 is disconnected:
    Disconnecting sessionID2 from sessionname rdp-tcp#2
  6. To disconnect session 5 by using the session name, type the following line at the command prompt, and then press ENTER:

    tsdiscon rdp-tcp#5
back to the top


For more information about the tsdiscon and query session commands, visit the following Microsoft Web site:

Terminal Services Command Reference
For additional information about how to connect to another Terminal Services session by using the TSCON command, click the article number below to view the article in the Microsoft Knowledge Base:
Q321703 HOW TO: Connect to Another Session by Using the TSCON Command in Windows 2000 Terminal Services
For more information about Windows 2000 Terminal Services, visit the following Microsoft Web site:
Windows 2000 Server Documentation
back to the top
How do I allow Remote Administration of Terminal Services to Non-Administrators Accounts? 

PSS ID Number: Q253831

Article Last Modified on 07-30-2001

The information in this article applies to:
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Datacenter Server


Terminal Services running in Remote Administration mode is designed to be used for remotely managing servers. Remote Administration mode does not require client licensing and is limited to two simultaneous connections. Groups that typically manage servers, such as Server Operators, are not included in the default RDP-TCP permissions, and therefore cannot log on. When a user who is not an administrator tries to log on, the user receives the following error message:

Logon Message

You do not have access to logon to this Session.



Members of the Administrators group are the only accounts with default permissions to log on to a Terminal Services-based server in Remote Administration mode. The System service account appears in the list also, but is not used for user access.


You can give additional groups and users logon permissions. The members of the Server Operators group, for example, would then be able to log on and manage the Terminal Services-based server without having to be a member of the Administrators group. To add additional groups or users:

  1. Click Start, point to Programs, point to Administrative Tools, and then click Terminal Services Configuration.
  2. in the tree in the left pane, click Connections.
  3. Click the RDP-TCP connection in the right pane, and then click Properties on the Action menu.
  4. Click the Permissions tab.

    NOTE: Only Administrator and System accounts appear.
  5. Click Add. Search for the groups or users that are appropriate for your Terminal Services management (such as the Server Operators group). Click Add to place them in the bottom pane. Click OK.

    NOTE: The Server Operators group appears in the RDP-TCP properties; the permissions in the bottom pane are not enough to manage the server because only Guest Access is selected by default.
  6. Click to select the User Access check box for basic tasks or both the User Access and Full Control check boxes to fully manage the server, and then click Apply.
  7. Click OK.
  8. Test by logging on the accounts in the Server Operators group.


This behavior is by design.

More Information

Only two concurrent logons to a Terminal Services-based server are allowed. This is not changed by adding additional groups to the allowable logon list. Remote Administration mode is not designed for users to log on and use programs. Install Terminal Services in Application Server mode for this type of usage.

For additional information, click the article number below to view the article in the Microsoft Knowledge Base:

Q246109 Error Messages Generated When Logging on with Terminal Services Client
Q243554 Explanation of RDP-TCP Permissions in Windows 2000
1 2 3 4 [5] 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26

Featured Links