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.