Microsoft.net framework 4.7.1是款由微软官方打造的高度兼容系统框架,在某些软件运行的时候它将会是必不可少的,而且这款由官方打造且完全免费工具的还能帮助用户在线进行编程操作
有关.NET Framework 4.7.1
Microsoft.NET Framework 4.7.1 是高度兼容就地更新Microsoft.NET Framework 4、 4.5、 4.5.1、 4.5.2、 4.6、 4.6.1 4.6.2 和 4.7。
在 Windows 7 SP1 和 Windows Server 2008 R2 SP1,Microsoft.NET 框架 4.7.1 列为在控制面板中的程序和功能项下已安装的产品。
在 Windows Server 2012, Microsoft Windows (KB4033345) 的更新将显示在控制面板中的已安装的更新。
在 Windows 8.1 和 Windows Server 2012 R2 中, Microsoft Windows (KB4033369) 的更新将显示在控制面板中的已安装的更新。
在 Windows 10 周年更新,Windows 10 创建者更新和 Windows 服务器 2016年,它被列为在控制面板中的已安装的更新下更新 Microsoft windows (KB4033393) 。
.NET Framework 4.7.1 是 Windows 更新和 Windows 服务器更新服务 (WSUS) 上找到。它将作为 Windows Update 上推荐的更新被提供。
本文档列出几项安装Microsoft .NET Framework 4.7.1后可能遇到的已知问题
在以高速分配和释放大对象的应用程序中启用后台GC时,可能会发生罕见的崩溃
症状
启用后台GC(BGC)时,在.NET Framework 4.7.1上运行的应用程序会遇到在其他.NET Framework版本上运行时未发生的间歇性崩溃。
原因
.NET Framework 4.7.1包含可改善后台GC性能的更改。它允许在BGC扫描阶段的一部分期间进行大对象分配,并且在此期间分配的大对象必须在分配器中正确标记,否则将被错误地回收。可以在大对象分配器代码路径期间触发GC,如果发生以下情况,将触发此错误:
这是一个BGC。
BGC的范围从之前的范围改变(即,新的分段在前一范围之外分配)。
新的大对象位于先前范围中不存在的区域中。
新的大型物体在BGC扫描阶段进行了标记。
这组条件使这个bug非常罕见。
由于GC不缩小范围,这意味着此错误通常仅在过程中很早就看到,或者当您突然分配比以前更多的大对象时,这需要获取超出堆范围的新段。
碰撞
此问题会影响在启用后台GC的情况下运行的应用程序,并且还会以高速率分配和释放大型对象。如“垃圾收集基础 ”一文中所述,大对象是任何大小为85,000字节或更大的对象。
此问题很少见,并且在运行x86版本的.NET Framework 4.7.1时比在.NET Framework 4.7.1的x64版本上运行时更容易发生。
解决方法
最实用的解决方法是通过在应用程序配置文件的部分中设置元素的enabled属性来禁用后台GC 。false
唯一的其他解决方法是将应用程序更改为以更低的速率分配和释放大对象。但请注意,此解决方法不提供保证; 它只是让这个bug发生的机会变小了。
WPF Touch在快速/长时间使用弹出窗口后停止工作
症状
在支持触控或手写笔的机器上,WPF应用程序在快速或长时间使用弹出窗口后可能会看到失去触控或触控笔(例如ComboBoxes,DropDown Menus)。
原因
在.NET 4.7中更改处理HwndSource会导致Popups无法正确清理触摸资源。这最终会导致触摸/手写笔交互的丢失。
解析度
在Windows 10 Fall Creators Update之前,所有受支持的操作系统平台都已修复此问题。Windows 10 Fall Creators Update的修复程序预计将在未来的服务更新中使用。
定位.NET Framework 4.7.1将额外文件复制到bin目录
症状
构建面向.NET Framework 4.7.1的应用程序时,如果visual studio 15.6.3工具使用一个或多个基于.NET标准的组件,则会将12个程序集复制到bin目录中。这会导致应用程序的bin输出更大并包含更多文件。
原因
.NET类型存在于不同的程序集中,具体取决于您运行的.NET实现。一个简单的示例是String类,当您使用.NET Standard 2.0时,它位于.NET Framework上的mscorlib.dll中,netstandard.dll中,以及在目标.NET Standard 1.x中的System.Runtime.dll中。对于在兼容的服务器上运行时成功加载一个.NET实现的库,运行时外观(带有类型转发)通常用于重新路由对不同位置的所有类型的引用。
.NET Framework 4.7.1旨在完全支持运行.NET Standard 2.0资产,但我们在12个程序集上发现了一些错误,这些错误会导致某些类型无法正确转发。修补这12个程序集是不可行的,因为应用程序需要将修补程序安装在最终用户计算机上才能正常运行。
碰撞
构建面向.NET Framework 4.7.1的应用程序并使用基于.NET标准的资产时,会发生此问题。
解决方法
在面向.NET Framework 4.7.1时,无法删除bin目录中的额外程序集。唯一的解决方法是重新编译您的应用程序以针对已解决此问题的.NET Framework 4.7.2或更高版本。
发行说明
.NET Framework发行说明描述了按产品区域分组的产品改进。每个更改都包含一个Microsoft内部VSTS错误ID,已更新的主要二进制文件以及更改是错误还是功能。