Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

Legacy applications that are running on Windows Server 2008-based terminal servers may decrease in performance over time


View products that this article applies to.

Symptoms

Legacy applications that are running on Windows Server 2008-based computers that have Terminal Server enabled may decrease in performance over time. This occurs when an application is not marked as Terminal Server aware. In this situation, the application may become slower to respond and may continue to decrease in performance as application uptime increases. Processor utilization in the application for the TSAPPCMP.dll module will continue to increase as the application continues to run.

Note Windows Performance Toolkit traces of the application reveal that the application continues to spend increasing CPU cycles in the TSAPPCMP.dll!ShouldEntryBeProcessed function.

↑ Back to the top


Cause

Legacy applications cannot be marked as Terminal Server aware because they do not contain the /TSAWARE linker option. Therefore, they load the TSAPPCMP.dll module. This module hooks module load events. Because of a problem in TSAPPCMP.dll, when an application loads and unloads many modules over time, the list of modules that are tracked may become so long that traversing the list affects the performance of the application. We know about this behavior and changed it in Windows Server 2012 and later versions.

↑ Back to the top


Workaround

To work around this behavior, enable the /TSAWARE linker option in the application executable (.exe) file. This prevents TSAPPCMP.dll from being loaded. 

The /TSAWARE flag can be added to developers' build projects. Or, the flag can be set on pre-existing executables by using EDITBIN.exe.

↑ Back to the top


More Information

For more information, go to the following Microsoft Developer Network (MSDN) websites:

↑ Back to the top


Keywords: kbtermserv, kb

↑ Back to the top

Article Info
Article ID : 3050345
Revision : 1
Created on : 1/7/2017
Published on : 4/2/2015
Exists online : False
Views : 269