VCL Grids, C++ Win64 Debugging, and the C++ Android Exception Handling and Resources
If you use VCL grids or C++Builder, we recommend you install Patch #3, which we released today. This patch addresses a number of issues in RAD Studio 10.4 for the VCL Grid, the C++ Win64 debugger (including adding a new formatter), C++ Builder Android exceptions, and C++ Android resource linking.
Two very important things to note:
- Install Patch 1 and Patch 2 first, in order (1, then 2, then 3.)
- Installing this patch has a manual step, just like patch #2, and it’s easy to get caught by it. Please follow the same instructions as patch #2 to install. Just installing via GetIt does not really install the patch. See full visual instructions for patch 2 (applicable to patch 3) here or read below for steps.
Installation
Installation Steps (via GetIt)
- Use GetIt to download the patch
- The patch executable is copied along with a ZIP file in a folder like: C:\Users\<name>\Documents\Embarcadero\Studio\21.0\CatalogRepository\10.4Patch3-10\R104_Patch3
- Close the RAD Studio 10.4 IDE (and also any other earlier versions of RAD Studio IDE)
- From the folder, run the batch file patch3.bat
- The installation will require elevation and proceed adding a detailed log file to the catalog repository folder
- When completed, restart the IDE
Installation Steps (via Download Portal)
- Use my.embarcadero.com to download the patch
- Similarly to the steps above, close the IDE and run the patch software via batch file from the download location
Uninstallation steps (both cases)
- Open the Catalog Repository installation folder above
- Run patch3uninstall.bat
- Alternatively, copy the files from the backup folder to the main RAD Studio installation folder
- Only *after* you have cleared the patch, uninstall the package from GetIt
Patch Contents
RAD Studio 10.4 Patch #3 addresses the following both customer-reported (RSP-) and internal (RS-) issues:
C++ Android:
RSP-27268 C++ Builder 10.3.3 Android Exceptions
RSP-29218 C++ Android error E4620 processing resource .fmx -2 raised
VCL:
RSP-29628 VCL Grids bug
C++ Win64 Debugging:
RSP-29239 Debugger does not start
RSP-29206 can’t debug win64 at all
RSP-29145 C++Builder 64 bit Debugger alters the default working directory from the app executable directory
RSP-29125 New Windows 64 bit debugger freezes and does not stop on exceptions
* Partial fix: Exception handling support in the debugger has been improved but there are still issues: OS-level exceptions (e.g. AV) are not always caught and reported. Some language-level exception types are not displayed correctly
RS-100553 [LLDB Win64 C++] Add formatter for unique_ptr
RS-100134 FMX & VCL C++ 64-bit App become unresponsive while trying to debug it
RS-97111 Evaluation of TLabel->Caption property returns « Unknown error »
This is an important set of fixes. As well as the VCL grids issue, which affects you if you use this control, it’s notable for the C++ items. First, Android exception handling is important if you ran into this issue and need to update your Android 32-bit app by the August 1st deadline. The resource linking issue is also worthwhile. Second, when 10.4 was released we added a new debugger for Win64, which is a huge improvement: it’s based on LLDB 9, has tools to evaluate and inspect STL collections or your own complex data structures, and more – it’s now on par with the classic debugger, which is important for moving to Clang. This patch fixes a number of bugs, especially with large projects, and also adds a new formatter (visualiser) for std::unique_ptr so you can easily inspect their contents.