Article ID: 919953
Article Last Modified on 10/26/2007
APPLIES TO
- Microsoft Windows Server 2003, Standard Edition (32-bit x86)
- Microsoft Windows Server 2003, Enterprise Edition
- Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
SUMMARY
This article describes how to resolve a problem that occurs when an application that runs in a Terminal Services environment stops running or runs slower than expected in Microsoft Windows Server 2003.
This article describes the following about this hotfix release:
- The issues that are fixed by this hotfix package
- The prerequisites for installing the hotfix package
- Whether you must restart the computer after you install the hotfix package
- The files that are contained in the hotfix package
This article describes the following detailed information about how to configure this hotfix release:
- How to verify that the system is experiencing this specific problem
- How to install the Microsoft Application Compatibility Toolkit
- How to use the Application Compatibility Toolkit to configure this hotfix release
This article also provides two methods that you can you use to work around this problem.
SYMPTOMS
An application that runs in a Terminal Services environment stops running or runs slower than expected in Windows Server 2003.
This problem occurs if the following conditions are true:
- The %homepath% directory is set in a user's Terminal Services profile.
- The application extensively reads or writes from the Win.ini file or from the .ini files that are in a per-user Windows directory on a Windows Server 2003-based computer that is running Terminal Services.
- The application accesses .ini files by using the GetProfileString function or the GetPrivateProfileString function.
- The %homepath% directory references a server across a high-latency link.
You do not experience this problem when the application is running in Microsoft Windows 2000 or in an earlier version.
CAUSE
This problem occurs for applications that are hard-coded to use the %systemroot%\Win.ini file or a customized .ini file. To avoid sharing violations, these applications automatically receive a copy of the Win.ini file that is stored in the user's Terminal Services %homepath%\Windows directory. If the application accesses the Terminal Services %homepath%\Windows directory across a high-latency connection, the read and write operations may be slow. Therefore, application performance may be slower than expected.
RESOLUTION
To resolve this problem, follow these steps:
- Verify that the system is experiencing this specific problem. To do this, follow these steps:
- Use File Monitor (Filemon.exe) or a similar file monitoring tool to filter for the Win.ini file or for the .ini file that the application uses.
- Verify that the read and write operations access the .ini file in the user's Terminal Services %homepath%\Windows directory when the application is running.
- Install the Microsoft Application Compatibility Toolkit.
- Install the hotfix that is described in this section.
- Use the Application Compatibility Toolkit to configure the hotfix.
Note See the "More information" section for detailed information about how to perform steps 2 and 4.
Service pack information
To resolve this problem, obtain the latest service pack for Windows Server 2003. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
889100 How to obtain the latest service pack for Windows Server 2003
Hotfix information
Prerequisites
There are no prerequisites for this hotfix.
Restart requirement
You must restart the computer after you apply this hotfix.
Hotfix replacement information
This hotfix does not replace any other hotfixes.
File information
The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.
Windows Server 2003
File name | File version | File size | Date | Time | Platform |
---|---|---|---|---|---|
Acgenral.dll | 5.2.3790.571 | 1,835,008 | 04-Aug-2006 | 13:47 | x86 |
Sysmain.sdb | Not Applicable | 1,211,490 | 04-Aug-2006 | 13:48 | Not Applicable |
Windows Server 2003 with Service Pack 1 (SP1)
File name | File version | File size | Date | Time | Platform | SP requirement |
---|---|---|---|---|---|---|
Acgenral.dll | 5.2.3790.2764 | 1,860,608 | 04-Aug-2006 | 13:48 | x86 | SP1 |
Sysmain.sdb | Not Applicable | 1,348,420 | 04-Aug-2006 | 13:52 | Not Applicable | SP1 |
WORKAROUND
To work around this problem, use one of the following methods:
- If the application only has to read from the Win.ini file, redirect the Win.ini file from the %homepath% directory to the system-wide Win.ini file that is located in the %systemroot% directory For more information about how to redirect the Win.ini file, click the following article number to view the article in the Microsoft Knowledge Base:
186498 Terminal Server application integration information
- Disable use of the Terminal Services %homepath% directory. To do this, follow these steps:
- Click Start, click Run, type dsa.msc, and then click OK.
- In the console tree, click Users.
- Double-click the name of the user whose %homepath% directory you want to change.
- On the Terminal Services Profile tab, delete the %homepath% entry in the Profile Path box, and then click OK.
STATUS
Microsoft has confirmed that this is a bug in the Microsoft products that are listed in the "Applies to" section. This problem was first corrected in Windows Server 2003 Service Pack 2.
MORE INFORMATION
How to download and install the Application Compatibility Toolkit
Install the Application Compatibility Toolkit before you install the hotfix that is described in the "Resolution" section. To download the Application Compatibility Toolkit, visit the following Microsoft Web site:
To install the Application Compatibility Toolkit, follow these steps:
- Double-click the Microsoft Application Compatibility Toolkit.msi file that you downloaded, and then click Run.
- Click Next, click I accept the terms in the license agreement, and then click Next.
- Type a user name in the User Name box, type an organization name in the Organization box, and then click Next.
- Click Complete, click Next, and then click Install.
- Click Finish. The Application Compatibility Toolkit starts.
- Exit the Application Compatibility Toolkit.
How to use the Application Compatibility Toolkit to configure the hotfix
Download and then install the hotfix that is described in the "Resolution" section. After you install the hotfix, use the Compatibility Administrator to configure the hotfix. To do this, follow these steps:
- Click Start, point to All Programs, point to Microsoft Application Compatibility Toolkit 4.1, point to Tools, and then click Compatibility Administrator.
- In the Custom Databases node in the console tree, right-click New Database, point to Create New, and then click Application Fix.
- In the Name of the program to be fixed box, type the application name.
- In the Name of the vendor for this program box, type the vendor name.
- Browse the Program file location, click the path and the name of the application, click Open, and then click Next.
- In the Operating System Modes box, click None, and then click Next.
- In the Compatibility Fix box, click RedirectUserWindirToProfile, click Next, and then click Finish.
- In the Custom Databases node in the console tree, click to select the database that you created in steps 2 through 7, and then click Save.
- In the Database Name box, click Save, type a descriptive database name, such as ApplicationIniFix, and then click OK.
- In the Save Database dialog box, type ApplicationIniFix in the File Name box, and then click Save.
- In the Custom Databases node in the console tree, right-click ApplicationIniFix, click Install, and then click OK.
- Expand the Installed Databases node in the console tree. The ApplicationIniFix database appears.
- Exit Compatibility Administrator.
How to copy the application compatibility fix to another Windows Server 2003-based computer
- Install the Application Compatibility Toolkit and the hotfix on another computer that is running Windows Server 2003.
- Copy the ApplicationIniFix.sdb file that you created in the previous procedure to this computer.
- Click Start, point to All Programs, point to Microsoft Application Compatibility Toolkit 4.1, point to Tools, and then click Compatibility Administrator.
- On the File menu click Open, click ApplicationIniFix.sdb, and then click Open.
- Under Custom Databases, right-click ApplicationIniFix, click Install, and then click OK.
- Expand the Installed Databases node in the console tree. The ApplicationIniFix database appears.
- Exit Compatibility Administrator.
For more information, click the following article number to view the article in the Microsoft Knowledge Base:
824684 Description of the standard terminology that is used to describe Microsoft software updates
Additional query words: Terminal Services Win.ini homepath slow
Keywords: kbwinserv2003sp2fix kbexpertiseinter kbbug kbfix kbhotfixserver kbqfe kbwinserv2003presp1fix kbpubtypekc KB919953