发布日期:2020 年7月21日
版本: .Net Framework 3.5 和 4.8
2020年7月21日,适用于 Windows 10 版本1809和 Windows Server 2019 的更新包括 .NET 3.5 和4.8 中的累积可靠性改进。我们建议你将此更新作为常规维护例程的一部分应用。在安装此更新之前,请参阅 先决条件 和 重启要求 部分。
质量与可靠性改进
CLR1 |
-.NET Framework 4.8 regressed 中的更改在某些 EnterpriseServices 方案中,单线程单元对象可能被视为多线程单元并导致阻塞失败。 此更改现在可以正确地标识单线程单元对象,从而避免此问题。 -解决包含 IBC 配置文件数据的程序集中的问题,导致 Ngen 工作进程崩溃并回退到完整的本机映像。 -解决线程终止传递期间可能出现的罕见故障。 |
|
SQL |
-SqlBulkCopy 可能会导致事务出现在内存中的 SQL 表中。 客户端可能会看到异常,消息 "执行超时已过期。 在操作完成之前超时时间已过,或者服务器未响应。 SqlBulkCopy 将数据发送到 Sql Server 后,WriteToServer 正在发送关注令牌(取消消息),从而导致服务器中止内存中表的事务。 |
|
ASP.NET |
-在 ASP.Net 遥测数据中使用 FIPS 兼容的哈希。 -解决了 "未指定" 为 forms 身份验证和会话状态配置节的 "cookieSameSite" 属性的配置中不允许的值的问题。 |
|
WPF2 |
-解决在 WPF TextBox 或 RichTextBox 中启用拼写检查时出现的问题,如 "等" 之类的单词被错误地标识为拼写错误。 -解决在某些每显示器上运行的可识别的 WPF 应用程序在 .NET 4.8 上运行时可能偶尔会遇到 exceptionSystem 崩溃的问题。 ComponentModel Win32Exception。 -解决了 TextBlock 在呈现和点击测试期间(而不是在度量值期间)重排(进行不同的换行决策)的问题。 症状包括缺少文本,并且在编程文本处理期间出现 FailFast 故障。 -解决由于 HostVisual 在错误的线程上断开目标而导致的呈现线程失败问题。 -解决了一个挂起问题,同时滚动树的树为非统一的树视图,在 thata 给定节点的子树中管理其大小有很大不同的子树。 -解决当关闭由用户代码重新 entrantly 关闭的工具提示时可能出现的崩溃问题。 -当 HwndHost 离开可视化树时,将创建一个堆栈跟踪。 这很昂贵,并且通常不必要。 现在,该逻辑已更改为仅在出现反常条件时才创建堆栈跟踪。 -解决 SpeechSynthesizer 中的内存泄漏。 如果系统剪贴板已被另一个进程锁定,则 DataGrid 的 Copy 命令将引发异常。 这会崩溃,因为堆栈上通常没有应用代码来捕获异常。 在这种情况下,TextBox (以及记事本、Word、浏览器等其他应用)的行为是无提示地失败-不会将任何内容复制到剪贴板,但没有异常。 WPF 应用现在可以通过在应用的 app.config 文件中设置 <appSettings> <add key = "ShouldThrowOnDataGridCopyOrCutFailure" 值 = "false"/> </appSettings>来选择此行为。 -解决构建 FixedPage 文档的内部模型时出现的问题。 某些文本出于编辑操作(如选择和复制/粘贴)的顺序出现错误。 |
|
WCF3 |
-在使用 NetTcpBinding 或 NetNamedPipeBinding 时,在 NetworkCredential 的 username 属性中使用的 UPN Windows 用户名与 username@dns 的格式不正确,WCF 会将用户名和域属性放入 "用户名" 和 "域属性"。 在某些情况下,这是无效的,这将导致无法通过身份验证。 此修补程序会在使用 UPN 用户名时删除凭据修改。 通过将 AppSetting "wcf: enableLegacyUpnUsernameFix" 设置为 true,可以重新启用修改。 |
|
网络库 |
-解决 HttpListener 中的内存泄漏。 |
|
Winforms |
-解决 DataGridView IsReadOnlyaccessibility 状态的问题:讲述人和其他易于访问的工具会相应地宣布只读单元格状态。 -解决当使用 DataGridView ComboBox 单元格类型并选择了 "第3级辅助功能" 的应用程序时,.NET Framework 4.8 中的回归,在编辑单元格时可能会遇到间歇性崩溃。 -解决 ClickOnce RFC3161 时间戳验证代码中的问题。 |
|
Winforms 辅助功能改进 |
在此版本中,我们将添加你的应用程序可以选择加入的新辅助功能改进。 默认情况下,将禁用这些更改。 选择进入在 .NET 4.8 和早期版本中引入的 辅助功能 的应用程序可以将以下兼容性开关添加到应用程序的配置文件: "Switch.UseLegacyAccessibilityFeatures.4=false" 尤其是,如果应用程序面向 .NET 4.8,请添加以下 AppContextSwitchOverrides 部分: <?xml version="1.0" encoding+"utf-8" ?> <configuration> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Versionv4.8" /> </startup> <runtime> <!-- AppContextSwitchOverrides value attribute is in the form of key1=true|false;key2=true|false --> <AppContextSwitchOverrides value="Switch.UseLegacyAccessibilityFeatures.4=false"/> </runtime> </configuration> 如果应用程序面向早期版本的 framework,并将其导入到以前发布的辅助功能集,则添加单个 "Switch.UseLegacyAccessibilityFeatures.4=false" 切换到现有 AppContextSwitchOverrides 顶部 <?xml version="1.0" encoding+"utf-8" ?> <configuration> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Versionv4.7"/> </startup> <runtime> <!-- AppContextSwitchOverrides value attribute is in the form of key1=true|false;key2=true|false --> <AppContextSwitchOverrides value="Switch.UseLegacyAccessibilityFeatures=false|Switch.UseLegacyAccessibilityFeatures.2=false|Switch.UseLegacyAccessibilityFeatures.3=false|Switch.UseLegacyAccessibilityFeatures.4=false"/> </runtime> </configuration> 此版本中的 Winforms 辅助功能改进包括:
|
1 公共语言运行时 (CLR)2Windows 演示基础 (WCF)3 Windows Communication Foundation
此更新中的已知问题
Windows Presentation Framework (WPF)应用程序使用属于通用线程的两个或多个 HostVisual 元素,在这种情况下,同时要求 HostVisual 元素从其可视目标断开连接,但邮件失败,并出现以下错误:
异常类型: COMException 消息: UCEERR_RENDERTHREADFAILURE (HRESULT 0x88980406) 调用堆栈: top 帧是 DUCE + SyncFlush ()。
变通办法
你可以通过将 AppContext 开关 "HostVisual DisconnectsOnWrongThread" 设置为 true 来禁用有问题的修复,使用此处所述的方法之一。 这会将你的应用公开给原始 bug,因此在通过即将推出的更新发布修补程序后,你应该删除该开关。
解决办法 1:
•将以下条目添加到 app.config 文件,以在单个应用程序中禁用有问题的修复。
<runtime> <AppContextSwitchOverrides value="Switch.System.Windows.Media.HostVisual.DisconnectsOnWrongThread=true"/> </runtime>
请注意,如果你的应用程序配置已有 <AppContextSwitchOverrides> 的条目,你需要在该条目中添加新设置,使用分号将其与其他开关分开:
<AppContextSwitchOverrides value="Switch.SomeOtherSwitch=true; Switch.System.Windows.Media.HostVisual.DisconnectsOnWrongThread=true"/>
解决办法 2
•应用以下注册表子项以禁用计算机上所有 WPF 应用程序的问题修复。 条 如果您使用注册表编辑器或使用其他方法错误地修改注册表,可能会出现严重问题。 这些问题可能需要您重新安装操作系统。 Microsoft 无法保证这些问题能够得到解决。 请自行承担修改注册表的风险。
位置: HKEY_LOCAL_MACHINE \Software\Microsoft\。NETFramework\AppContext\ 名称: DisconnectsOnWrongThread 的 HostVisual 类型: String 值: true
请注意,在64位操作系统上,你还需要在位置处应用具有相同名称、类型和值的注册表子项: HKEY_LOCAL_MACHINE \Software\Wow6432Node\Microsoft\。NETFramework\AppContext\
解决方案
我们正在处理解决方案,并将在即将推出的版本中提供更新。
有关此更新的其他信息
以下文章包含有关此更新的其他信息,因为它与各个产品版本相关。
-
45673274.7.2 和 4.8 For windows 10 版本1809和 windows SERVER 2019 (KB4567327)累积更新预览的累积更新3.5 预览
如何获取并安装更新
安装此更新
发布频道 |
可用 |
下一步 |
Windows 更新和 Microsoft 更新 |
是 |
若要下载并安装此更新,请转到 " 设置 " > 更新 & 安全 > Windows 更新,然后选择 " 检查更新"。 |
Microsoft 更新目录 |
是 |
若要获取此更新的独立程序包,请转到 Microsoft 更新目录网站。 |
Windows Server 更新服务(WSUS) |
否 |
你可以手动将此更新导入到 WSUS。 有关说明,请参阅 Microsoft Update 目录 。 |
文件信息
有关此更新中提供的文件的列表,请下载 有关 累积更新的文件信息。
先决条件
若要应用此更新,必须安装 .Net Framework 3.5 或 4.8 。
重启要求
如果未使用受影响的文件,则应用此更新之后无需重新启动计算机。 我们建议你退出所有基于 .NET Framework 的应用程序,然后再应用此更新。
如何获取此更新的相关帮助和支持
-
帮助安装更新程序: Windows 更新常见问题解答
-
在线和在家保护自己: Windows 安全支持
-
基于国家/地区的本地支持: 国际支持