本文介绍 Microsoft .NET Framework 3.5 Service Pack 1(SP1)中 TSAware 标志行为的变化。
原始产品版本: .Net 3.5 Framework Service Pack 1
原始 KB 数: 2229865
TSAware 行为的更改
从 .Net 3.5 Framework SP1 开始, /TSAWARE 标志在包含的 C# 和 Visual Basic 生成的映像的 PE 标头中默认设置为 ON。 NET 编译器。 可以在使用这些编译器生成的任何 C#/VB.net 程序集上运行dumpbin.exe,如下所示对其进行验证:
Dumpbin /Headers <assembly_name>.exe(dll)
示例输出:
8540 DLL characteristics
Dynamic base
NX compatible
No structured exception handler
Terminal Server Aware
注释
Dumpbin.exe包含在 Windows SDK 中,还随 Visual Studio 一起安装。
对于 Visual C++ 项目,可以通过 Visual Studio 集成开发环境(IDE)编辑此标志,如下所示:
- 打开项目的“属性页” 对话框。 有关详细信息,请参阅设置 Visual C++ 项目属性。
- 选择“链接器”文件夹。
- 选择“系统属性”页。
- 修改“终端服务器”属性。
详细信息
根据 /TSAWARE 文档,当应用程序不识别终端服务器(也称为旧应用程序)时,终端服务器会对旧应用程序进行某些修改,使其在多用户环境中正常工作。 例如,Terminal Server 将创建虚拟 Windows 文件夹,以便每个用户获取 Windows 文件夹,而不是获取系统的 Windows 目录。 它允许用户访问自己的 INI 文件。 此外,终端服务器还会对旧式应用程序的注册表进行一些调整。 这些修改导致在终端服务器上加载旧式应用程序的速度变慢。
建议将应用程序更新为 TSAWARE ,而不修改此标志。