RAD Studio 10.4.1 改进内容

Updated RAD Studio 10.4.1 Sydney release available (September 2nd, 2020).

更新了 RAD Studio 10.4.1悉尼版本(2020年9月2日)。

Note: 注意:

RAD Studio 10.4 Sydney - Release 1 (also known as 10.4.1) is available for installation. 10.4.1 builds on the feature set of 10.4, enhancing existing features throughout the product, and adding new capabilities. Delphi 10.4.1, C++Builder 10.4.1, and RAD Studio 10.4.1 are available to download to any active Update Subscription customer.

可以安装 RAD Studio 10.4 Sydney-Release 1(也称为10.4.1)。10.4.1基于10.4的特性集,增强整个产品的现有特性,并添加新功能。Delphi 10.4.1、 c + + Builder 10.4.1和 RAD Studio 10.4.1可供任何活跃的 Update Subscription 客户下载。

RAD Studio 10.4.1 has a strong focus on quality improvements. Key quality focus areas include:

RAD Studio 10.4.1非常重视质量改进。主要的质量重点领域包括:

  • IDE
  • Delphi Code Insight (LSP)
  • Parallel Library 并行程序库
  • SOAP & XML
  • C++ Toolchain C + + 工具链
  • FireMonkey
  • VCL
  • Delphi Compiler Delphi 编译器
  • iOS Deployment 部署

RAD Studio 10.4.1 includes all fixes from 10.4 Patch 1Patch 2, and Patch 3

RAD Studio 10.4.1包括10.4修补程序1、修补程序2和修补程序3的所有修复

In addition to quality enhancements, 10.4.1 also includes a number of new features, as detailed below.

除了质量增强之外,10.4.1还包括一些新特性,详见下文。

Contents

内容

  • Installing 10.4.1 安装10.4.1
  • Key Enhancements by product area in 10.4.1 10.4.1中按产品领域分列的主要改进
    • 2.1 Supported Platforms 支持平台
    • 2.2 IDE
      • 2.2.1 Projects 项目
      • 2.2.2 Layouts 布局
      • 2.2.3 UI 用户界面
      • 2.2.4 General 
      • 2.2.5 Smaller but notable fixes 规模较小但值得注意的修复
    • 2.3 Delphi LSP/ Code Completion Changes Delphilsp/代码完成更改
      • 2.3.1 Code Insight for Large Projects 大型项目的代码洞察力
    • 2.4 RTL Improvements RTL 改进
      • 2.4.1 New TLightweightMREW Record 新纪录
      • 2.4.2 Parallel Programming Library 并行编程库
      • 2.4.3 SOAP and XML SOAP 和 XML
      • 2.4.4 Web Clients 网络客户端
      • 2.4.5 Database 数据库
      • 2.4.6 Other RTL Improvements 其他 RTL 级别的改进
    • 2.5 VCL Improvements VCL 改进
    • 2.6 FireMonkey
      • 2.6.1 FMX TMemo improvements 改进
      • 2.6.2 Smaller but notable fixes 规模较小但值得注意的修复
    • 2.7 Delphi Language Delphi 语言
      • 2.7.1Managed Records 管理记录
    • 2.8 C++ Language C + + 语言
      • 2.8.1 Win64 Debugger 64 Debugger
      • 2.8.2 Linker 连接器
      • 2.8.3 Exception Handling 异常处理
      • 2.8.4 General Quality 一般品质
    • 2.9 Other Enhancements 其他改进
    • 2.10 See Also 参见

Installing 10.4.1 安装10.4.1

If you have already installed 10.4 Sydney (May 26th, 2020), installing 10.4 Sydney - Release 1 requires a full uninstall and reinstall. As part of the uninstall process, you will see an option for preserving your settings. This is enabled by default. Separately, you can also preserve settings with Settings Migration Tool.

如果您已经安装了10.4 Sydney (2020年5月26日) ,那么安装10.4 Sydney-Release 1需要完全卸载并重新安装。作为卸载过程的一部分,您将看到一个保存设置的选项。这是默认启用的。另外,还可以使用设置迁移工具保留设置。

Key Enhancements by product area in 10.4.1 10.4.1中按产品领域分列的主要改进

Supported Platforms 支持平台

RAD Studio now supports deploying apps on Windows Server 2019.

现在支持在 Windows Server 2019上部署应用程序。

IDE

Projects 项目

  • Package AUTO libsuffix: packages can now have an automatic version suffix, instead of manually updating and specifying the right version suffix with each new release. (The compiler quietly supported this in 10.4, but full support for the feature in the IDE and package project settings is introduced in 10.4.1.) 包 AUTO libsuffix: 包现在可以有一个自动的版本后缀,而不是手动更新和指定每个新版本的正确版本后缀。(编译器在10.4中悄悄地支持这个功能,但是在10.4.1中引入了对 IDE 和包项目设置中特性的完全支持。)
  • The Pentium-safe FDIV compiler option is no longer shown in the Delphi compiler options. 奔腾安全的 FDIV 编译器选项不再显示在 Delphi 编译器选项中
  • The Projects pane context menu items that were no longer available after 10.3 (invoked by right-clicking on an empty area in the Projects pane) are now available via a drop-down in the Projects pane toolbar. “项目”窗格上下文菜单项在10.3之后不再可用(通过右键单击“项目”窗格中的空白区域进行调用) ,现在可以通过“项目”工具栏下拉菜单项

Layouts 布局

  • Improved support for multi-monitor desktop layouts for those using multiple editor windows across multiple screens 改进了对跨多屏幕使用多个编辑器窗口的多显示器桌面布局的支持
  • The floating form designer has been removed. Note that you can still have multiple edit windows including a form designer in a second window, and in fact, support for that has been enhanced. 已删除浮动表单设计器。请注意,您仍然可以在第二个窗口中有多个编辑窗口,包括一个表单设计器,实际上,对该窗口的支持已经得到了增强
  • When the IDE switches layout, such as to/from debugging, or to/from startup (e.g. when opening or closing a project), if the same layout is specified for both states, the layout won’t be applied. This avoids unnecessarily switching layouts. 当 IDE 切换布局时,如从调试切换到/从调试切换到/从启动切换到/从启动切换到(如在打开或关闭项目时) ,如果为两种状态指定了相同的布局,则不会应用布局。这样可以避免不必要地切换布局
  • Desktop layouts which cannot be applied (i.e. are floating layouts, no longer supported, see above) will be listed in gray in the Desktop Layout combo box in the title bar. When a floating layout is applied, the IDE will instead show a dialog. 无法应用的桌面布局(即浮动布局,不再受支持,见上文)将在标题栏的“桌面布局”组合框中以灰色列出。当应用浮动布局时,IDE 将显示一个对话框
  • Improved support for 4K monitors: IDE now correctly restores layouts on a 4K monitor in situations where the 4K screen is not scaled 改进对4K 显示器的支持: IDE 现在可以在4K 显示器上正确地恢复布局,在4K 屏幕没有缩放的情况下
  • If the IDE expects a project’s .dsk file but it does not find it, it opens using the default layout. 如果 IDE 需要一个项目的.dsk 文件,但是没有找到它,它会使用默认布局打开

UI 用户界面

  • Options and other dialogs: 选项和其他对话框:
    • The Project Options, IDE Options, GetIt, and New Items dialogs now have scrollbar tracking (will move as you drag the scrollbar.) This includes scrolling with the mouse wheel 项目选项、 IDE 选项、 GetIt 和 New Items 对话框现在都有了滚动条跟踪(将在拖动滚动条时移动)这包括用鼠标滚轮滚动
    • The Options dialog (environment options) used to always open to show settings for the Win64 target platform; now it opens according to the currently active platform. “选项”对话框(环境选项)过去总是打开以显示 Win64目标平台的设置; 现在它根据当前活动平台打开
  • Several listview controls, which can be difficult to read in the dark theme, have been replaced by the virtual treeview. 一些在黑暗主题中难以阅读的 listview 控件已经被虚拟树视图所取代
  • The guided tour was removed from the Welcome page 欢迎页面上的导游已被删除
  • Several Object Inspector fixes, especially around flickering and selecting the wrong property 几个对象检视器修复,特别是在闪烁和选择错误的属性时
  • Improved the selection of items on the Structure pane, including where you would click on an item and another item was selected 改进了“结构”窗格中的项的选择,包括单击项和选择另一项的位置

General 

  • Broadcast to devices’ is off by default. This always accessed the network on IDE startup, causing errors for some customers. Now that it’s disabled, (valid) network errors will only occur if you turn it on. “向设备广播”默认是关闭的。这总是在 IDE 启动时访问网络,导致一些客户出错。现在它被禁用了,只有当您打开它时才会发生(有效的)网络错误
  • The names of the 64-bit Windows debuggers (visible in the Attach To Process dialog) have been clarified to explain which is for Delphi and which for C++. This should help you choose which debugger to use when attaching to a process. 64位 Windows 调试器的名称(在“附加到进程”对话框中可见)已经被澄清,以解释哪些是用于 Delphi,哪些是用于 c + + 。这应该有助于您选择在附加到进程时使用哪个调试器

Smaller but notable fixes 规模较小但值得注意的修复

  • ‘Delete Invalid Paths’ should no longer remove valid paths. “删除无效路径”将不再删除有效路径
  • Moving toolbars no longer presents issues. 移动工具栏不再提出问题
  • "-showotamenunames" (used by ToolsAPI developers) has been re-enabled. “-showotamenunames”(ToolsAPI 开发人员使用)已重新启用
  • Editing a string list in the code editor now works again. 在代码编辑器中编辑字符串列表现在可以再次工作
  • Dialogs are shown in the IDE using a modern style. 在 IDE 中使用现代风格显示对话框
  • Drawing issues, such as showing the IDE window as a solid color when opening a project, are resolved. 绘图问题(例如在打开项目时将 IDE 窗口显示为纯色)得到解决
  • On Windows 7, the title bar no longer has a white line at the top. 在 Windows 7中,标题栏顶部不再有白线
  • The action editor used to draw images as black, which is resolved. 用于将图像绘制为黑色的动作编辑器,该动作编辑器已解析
  • Some IDE menus now draw correctly (e.g. popup menus in Audits); also some menus did not show the menu Checked state, but now do. 一些 IDE 菜单现在可以正确地绘制(例如审计中弹出菜单) ; 还有一些菜单没有显示 Checked 状态,但是现在可以了
  • The debug symbols search path now supports $(Platform) and $(Config) environment variables 调试符号搜索路径现在支持 $(Platform)和 $(Config)环境变量
  • The code editor used to let you select invalid encodings for a unit (applicable only to forms); these are now no longer available. 用于为单元选择无效编码的代码编辑器(仅适用于表单) ; 现在不再可用
  • An issue installing packages that presented as being unable to load a package, caused by packages with the filename case differing on disk and usually seen with large projects, has been resolved. 由于软件包的文件名在磁盘上不同,通常在大型项目中可以看到,所以安装软件包时出现了无法加载软件包的问题,这个问题已经得到解决

Delphi LSP/ Code Completion Changes Delphi LSP/代码完成更改

  • Code Insight now supports completing in a class declaration Code Insight 现在支持在类声明中完成
  • Significant performance work: 重要的工作表现:
    • Improvement in memory usage, with DelphiLSP processes using much less memory 通过 DelphiLSP 进程使用更少的内存,提高了内存使用率
    • Improvement in speed: code completion results should appear much more quickly 提高速度: 代码完成结果应该出现得更快
  • Inside Code completion, go to definition and hover, all provide better results (e.g., code completion improves the list of symbols it suggests.) 内部代码完成,去定义和悬停,都提供了更好的结果(例如,代码完成改善了它建议的符号列表。)
  • There are new options for controlling code completion, allowing you to tweak the functionality to behave much more similarly to classic completion. Read more about these settings 有控制代码完成的新选项,允许您调整功能,使其行为更接近于经典的完成。阅读更多关于这些设置的信息here 这里.
  • When filtering code completion as you type, the matching characters are now optionally drawn underlined. 在键入筛选代码完成时,匹配字符现在可以选择地绘制带下划线的字符
  • Class completion settings have been moved to the Code Insight settings page 类完成设置已移动到“代码洞察”设置页
  • Files changed outside the IDE (e.g. by an external editor or source control) will be recognized by the LSP server and re-scanned. 在 IDE 之外更改的文件(例如由外部编辑器或源代码控制)将被 LSP 服务器识别并重新扫描
  • Several fixes for general Code Insight issues presenting as no completion results, including an issue with a + symbol in the path, plus several others. 针对表示为没有完成结果的通用 Code Insight 问题的几个修复程序,包括路径中的一个 + 符号问题,以及其他几个问题
  • Improved handling of packages 改善包装的处理
    • Packages with contained units no longer cause errors 包含包含单位的包不再导致错误
    • Code completion will offer symbols from a required package 代码完成将提供来自所需包的符号
    • There should be no more false errors reported in packages. 在包中不应该再有错误报告
    • Code completion in packages, in general, is improved. 一般来说,包中的代码完成得到了改进
  • Help Insight shows accurate content when hovering over a symbol. 当鼠标悬停在符号上方时,Help Insight 会显示准确的内容
  • Code completion will work when ‘Use MSBuild externally to compile’ is turned on.c 当打开“从外部使用 MSBuild 编译”时,代码完成将工作
  • Errors rendering ‘red squiggles’ have been resolved when the length of the red squiggly line was wrong. 当红色弯曲线的长度出现错误时,就可以解决渲染“红色弯曲线”的错误
  • When code completion’s list was set to sort by name instead of scope, selecting an item inserted the wrong text. This is fixed. 当代码完成的列表被设置为按名称而不是范围排序时,选择一个插入错误文本的项。这是固定的
  • 10.4.1 also includes all fixes from 10.4 Patch 2, such as not inserting () braces when they already exist, pressing Space not selecting the current completion, completion lagging, and then not entering text correctly, Error Insight in the Structure pane lagging by a keystroke, and so forth. 10.4.1还包括来自10.4补丁2的所有修复,例如当已经存在时不插入()括号,按空格键不选择当前完成,完成滞后,然后不正确输入文本,结构窗格中的错误洞察滞后于按键,等等

Code Insight for Large Projects 大型项目的代码洞察力

The following fixes will be especially noticeable for large projects. Note the above memory usage and performance fixes are also very significant for large projects.

对于大型项目,下面的修复特别值得注意。请注意,上述内存使用和性能修复对于大型项目也非常重要。

  • The compiler improved attempts to parse past fatal errors. 编译器改进了分析过去致命错误的尝试
  • Improved the notifications to the server when there are IDE-side changes. This reduces churn and improves completion accuracy. 改进了当出现 ide 端更改时发送给服务器的通知,减少了更改的频率,提高了完成的准确性

RTL Improvements RTL 改进

New TLightweightMREW Record 新纪录

We are introducing a new reader-writer lock implementation, working across all supported platforms and which is faster and more lightweight than the old TMultiReadExclusiveWriteSynchronizer (a.k.a. TMREWSync). TLightweightMREW wraps a native implementation of a reader-writer lock on each platform.

我们正在引入一个新的读写器锁实现,它可以在所有支持的平台上工作,比旧的 TMultiReadExclusiveWriteSynchronizer (又名 TMREWSync)更快、更轻量。Tlightweighttmrew 包装了每个平台上读写器锁的本机实现。

For more information, please read the TLightweightMREW documentation.

有关更多信息,请阅读 tlightweighttmrew 文档。

Parallel Programming Library 并行编程库

Many fixes to TThread.WaitFor, TParallel.For, TParallel.Join, TConditionVariableMutex.WaitFor for Linux, TTask.WaitForAny, and the TPoolThread class IdleWorkerThreadCount. We also addressed some issues with TThreadedQueue related with PopItem, the use of a large number of threads, and more.

许多对 TThread 的修复。等等,TParallel。为,TParallel。加入,TConditionVariableMutex。等待 Linux,TTask。和 TPoolThread 类 IdleWorkerThreadCount。我们还讨论了与 PopItem 相关的 TThreadedQueue、大量线程的使用等问题。

SOAP and XML SOAP 和 XML

  • XML quality work: a few long-standing issues with the TXMLDocument component were improved, tied to the various DOMVendors we support (OmniXML, ADOM). Some of these issues are related to UTF support and encodings. XML 质量工作: TXMLDocument 组件的一些长期存在的问题得到了改进,这些问题与我们支持的各种 DOMVendors (OmniXML、 ADOM)相关。其中一些问题与 UTF 支持和编码有关
  • SOAP WSDL Importer: improved the WSDL importing logic and also SOAP clients invocation. SOAP WSDL 导入器: 改进了 WSDL 导入逻辑和 SOAP 客户机调用

Web Clients 网络客户端

  • Winapi.Winsock2 now includes inet_ntop to better support IPv6 addresses Winapi. Winsock2现在包含了 inet _ ntop 以更好地支持 IPv6地址
  • TRESTResponseDataSetAdapter imports JSON strings with appropriate length TRESTResponseDataSetAdapter 导入具有适当长度的 JSON 字符串
  • Improved support for enums in TJSONSerializer 改进对 TJSONSerializer 中 enum 的支持
  • A few TRestResponseDataSetAdapter fixes 一些 TRestResponseDataSetAdapter 修复
  • Creating a TIPAddress from a URL now works also on Windows 通过 URL 创建一个 TIPAddress 现在也可以在 Windows 上使用
  • The NSURLConnection API was deprecated by Apple on Mac OS X 10.11 and iOS 9, but it was still used in our HTTP Client Library. 10.4.1 introduces support for the newer NSURLSession API on both platforms. This change also addresses issues with proxy support on macOS. 在 Mac o s x 10.11和 iOS 9上,NSURLConnection API 被苹果否决了,但它仍然在我们的 HTTP 客户端库中使用。10.4.1在两个平台上都引入了对新的 NSURLSession API 的支持。这一更改还解决了 macOS 上代理支持的问题

Database 数据库

  • A significant number of DataSnap issues have been addressed, including some performance problems and memory leaks, MidasLib issues, DatasetProvider and TClientDataSet ones 大量的 DataSnap 问题已经得到解决,包括一些性能问题和内存泄漏,MidasLib 问题,DatasetProvider 和 TClientDataSet 问题
  • Improved FireDAC support for SQL Server Function Parameters 改进对 sqlserver 函数参数的 FireDAC 支持
  • Fix in TFDMemTable FindFirst with IndexFieldNames 修复 TFDMemTable FindFirst 中的 IndexFieldNames
  • Improved TFDQuery with Calculated- and BLOB-Fields 带有 Calculated-and blob 字段的改进 TFDQuery
  • Better TFDTable PostgreSQL multicolumn index field order 更好的 TFDTable PostgreSQL 多列索引字段顺序
  • FireDAC-PostgreSQL parsing of QuoteTag inside strings 对字符串中的 quotettag 进行解析

Other RTL Improvements 其他 RTL 级别的改进

  • Performance improvements for TStrings with custom LineBreak 使用自定义 LineBreak 提高 TStrings 的性能
  • Optimized TObject methods returning or checking strings 优化的 TObject 方法返回或检查字符串
  • Exposed UTF8IdentXxx functions 公开 UTF8IdentXxx 函数
  • Optimized LoadResString 优化的 LoadResString

VCL Improvements VCL 改进

  • Several TGrid regressions in 10.4 (partially already addressed in 10.4 Patch 2) have been resolved, including TStringGrid and other grid controls, misalignment in grid StretchDraw method in OnDrawCell, and others 已经解决了10.4中的几个 TGrid 回归问题(部分已经在10.4 Patch 2中解决了) ,包括 TStringGrid 和其他网格控件,OnDrawCell 中的网格延伸/绘制方法中的不对齐问题,以及其他问题
  • Improved TGridPanel’s handling of percentage-based spacing. You can now specify exact percentages for columns or rows and have those apply instead of them being modified as you set them. This greatly improves using the TGridPanel layout control to get exactly the spacing your layout needs 改进了 TGridPanel 对基于百分比的间距的处理。现在可以为列或行指定准确的百分比,并应用这些百分比,而不必在设置它们时修改它们。这极大地改进了使用 TGridPanel 布局控件来精确获取布局所需的间距
  • TBitBtn's inbuilt glyphs have been moved to HighDPI, plus scaling improvements TBitBtn 的内置字形已经被移动到高 dpi,加上缩放改进
  • The custom title bar supports high DPI scaling and has a number of other quality fixes 自定义标题栏支持高 DPI 缩放,并有许多其他质量修复
  • TUpDown component Position property and OnChangingEx event improvements TUpDown 组件 Position 属性和 OnChangingEx 事件改进
  • StatusBar component supports DoubleBuffered drawing StatusBar 组件支持双缓冲绘图
  • TPageControl SetTabIndex methods now works correctly if there are hidden tabs 如果有隐藏的选项卡,TPageControl SetTabIndex 方法现在可以正常工作
  • TDateTimePicker text doesn’t look blurred on move hovering 移动鼠标悬停时,TDateTimePicker 文本看起来并不模糊
  • TLabel word wrap has been improved by replacing the font height calculation logic 通过替换字体高度计算逻辑,TLabel 字换行得到了改进
  • TListView infotip stays visible longer TListView 信息提示保持可见的时间更长
  • DB Controls border looks the same of the non-data-aware controls Dbcontrols 边界看起来与非数据感知控件相同
  • Several style improvements 几种风格的改进
  • Issues with the caption widths of owner drawn top-level menu items, and styled menus and their scaling, have been improved 所有者绘制的顶级菜单项的标题宽度、样式菜单及其缩放等问题都得到了改进
  • Styles respect the ImageMargins of TButton and TButton text positions 样式尊重 TButton 和 TButton 文本位置的 ImageMargins

FireMonkey

FMX TMemo improvements 改进

We are continuing the work on the new FireMonkey TMemo component architecture, by adding additional improvements to the Windows implementation and adding support for macOS to this new FMX TMemo component architecture. Most of the focus is on TMemo IME mode for Korean, Japanese, and Chinese (among other languages) but there are also general improvements in performance, stability, scrolling behavior, mouse selection, copy and paste, and more. There are also fixes for TEdit.

我们正在继续新的 FireMonkey TMemo 组件架构的工作,为 Windows 实现添加额外的改进,并为新的 FMX TMemo 组件架构添加 macOS 支持。主要关注的是针对韩语、日语和中文(以及其他语言)的 TMemo IME 模式,但是在性能、稳定性、滚动行为、鼠标选择、复制和粘贴等方面也有普遍的改进。还有一些针对 TEdit 的修复方法。

Smaller but notable fixes 规模较小但值得注意的修复

  • The Storyboard Launch Screen has added support for icon sizes required by Apple for iOS. 故事板启动屏幕增加了对苹果 iOS 所需图标尺寸的支持
  • Improved permissions management for iOS Push notifications 改进 iOS 推送通知的权限管理
  • TListView OnItemClick fires even if already selected 即使已经选中,仍然触发 TListView OnItemClick
  • Fixed an issue with inconsistent values for TMediaPlayer.Duration on Android 修正了安卓系统上 TMediaPlayer. 持续时间不一致的问题
  • iOS WebBrowser issue with external links 有外部链接的 iOS 浏览器问题
  • TStringGrid OnCellDblClick event 事件
  • TListView Checkmark Accessory disappearing 清单/视图复选标记附件消失

Delphi Language Delphi 语言

The 10.4.1 release improves the Delphi compiler in several areas. In particular the focus was on supporting the LSP code completion, and in improving the managed records quality, but we also addressed a few 10.4 regressions and unexpected changes (including issues with goto statements and other uncommon scenarios). There are some improvements in package references and C++ HPP files generation. The release also improves compiler performance in a few areas, optimizing unit names lookup and other internal searches, benefiting large projects. There are also a few code generation improvements (that is, cases in which the compiler can generate code that performs better).

10.4.1版本在几个方面改进了 Delphi 编译器。特别是重点是支持 LSP 代码完成,以及提高托管记录的质量,但我们也处理了一些10.4回归和意外的变更(包括 goto 语句和其他不常见场景的问题)。在包引用和 c + + HPP 文件生成方面有一些改进。该版本还提高了编译器在一些领域的性能,优化了单元名称查找和其他内部搜索,使大型项目受益。还有一些代码生成方面的改进(也就是说,编译器可以生成性能更好的代码)。

Managed Records 管理记录

This release improves Managed Records quality, including:

此版本提高了管理记录的质量,包括:

  • Return values optimizations 返回值优化
  • Cleanup of a few compiler errors 清除一些编译器错误
  • Improvements to operator Assign 操作员分配的改进
  • Changes to Default(T) for managed records 更改托管记录的默认值(t)
  • Better coexistence of managed records and generics 更好地共存托管记录和泛型
  • Some cases of missing invocation of Initialize Initialize 调用丢失的几种情况

C++ Language C + + 语言

Win64 Debugger 64 Debugger

  • The Win64 LLDB-based debugger has several improvements, especially around catching and continuing from exceptions, and in performance (especially when there are many threads.) 基于 Win64 lldb 的调试器有一些改进,特别是在捕获和继续异常方面,以及在性能方面(特别是在有许多线程的情况下)
  • Fixed an issue where Delphi visualizers were being invoked: visualizers for TStringList, Currency, TDateTime are no longer invoked. 修正了 Delphi 可视化工具被调用的问题: 不再调用 TStringList、 Currency 和 TDateTime 的可视化工具
  • Fixed an issue where the exception dialog was shown when using F7 to start a new debug session. 修正了当使用 F7启动新的调试会话时出现异常对话框的问题
  • Handling of OS exceptions is improved. 操作系统异常的处理得到了改进
  • IDE performance improved when stepping when there are hundreds of threads. 当有数百个线程时,单步执行可以提高 IDE 的性能

Linker 连接器

  • The Win64 linker (ilink64) has had significant revision of its memory handling. This should reduce out of memory errors in large projects, or with debug builds. Win64连接器(ilink64)对其内存处理进行了重大修改。这应该可以减少大型项目或调试版本中的内存不足错误

Exception Handling 异常处理

  • Several key exception handling issues have been fixed. This includes an issue affecting ACE/TAO allocating memory, where the Windows API can throw a SEH exception. 已经修复了几个关键的异常处理问题。这包括一个影响 ACE/TAO 分配内存的问题,其中 Windows API 可以抛出 SEH 异常

General Quality 一般品质

  • Several crashes, ICEs and similar resolved in the Clang compiler. 在 Clang 编译器中解决了几个崩溃、 ICEs 和类似问题
  • Issues generating RTTI for closures have been resolved. 为闭包生成 RTTI 的问题已经得到解决
  • Improvements in debug info generation especially for Delphi-style classes. 改进了调试信息生成,特别是 delphi 风格的类
  • Improvements in the RTL, mainly around removing the MFC compatibility macro and always exporting these symbols, as well as compatibility issues found while supporting common C++ libraries. RTL 的改进,主要围绕删除 MFC 兼容宏并且总是导出这些符号,以及在支持通用 c + + 库时发现的兼容性问题

Other Enhancements 其他改进

  • Addressed an access violation in the License Manager application. 解决了许可证管理器应用程序中的访问冲突
  • Directly invoking GetItCmd.exe no longer removes installed packages from the system

See Also 参见

 

posted @ 2020-09-03 11:02  塞翁失身  阅读(1126)  评论(0编辑  收藏  举报