Watch, Follow, &
Connect with Us
Public Report
Report From: Delphi-BCB/Debugger/Execution    [ Add a report in this area ]  
Report #:  104056   Status: Closed
Debugging with Delphi debug DCUs not working with CodeSite Express
Project:  Delphi Build #:  16.0.4429.46931
Version:    16.4 Submitted By:   Daniel Triendl
Report Type:  Crash / Data loss / Total failure Date Reported:  3/9/2012 2:09:24 AM
Severity:    Critical / Show Stopper Last Updated: 8/27/2013 6:06:18 PM
Platform:    All versions Internal Tracking #:   26877
Resolution: Fixed (Resolution Comments) Resolved in Build: : XE4 Update1
Duplicate of:  None
Voting and Rating
Overall Rating: No Ratings Yet
0.00 out of 5
Total Votes: None
Description
If CodeSite Express 5.1 is installed (part of Delphi Setup), it's not possible to debug Deplhi DCUs if the project is linked with runtime packages.

CodeSite Express installs bpl files in C:\Windows\System32 that get loaded and block debugging in Delphi DCUs.
Steps to Reproduce:
1. Install Delphi XE2 Update 4 w/ Codesite Express 5.1
2. Create a new VCL forms project
3. In the project options select With debug DCUs
4. In the project options select link with runtime packages
5. Place a TPageControl on the main form
6. Set a breakpoint at TPageControl.Create
7. Build and start debugger

Expected: Debugger should break on TPageControl.Create

Actual result: Doesn't break, debugging delphi code is not possible.
Workarounds
Uninstall CodeSite Express 5.1
Attachment
None
Comments

Tomohiro Takahashi at 4/3/2012 7:30:04 PM -
This report was opened with valid Internal Tracking Number.
Thanks.

Ray Konopka at 7/10/2012 1:03:06 PM -
The root cause of this particular issue is in the redistribution of Embarcadero Runtime Packages.  The CodeSite Viewers are built with runtime packages and therefore distribute the vcl160.bpl package. Before XE2, these runtime packages were installed in the System32 folder (or SysWOW64 on a 64-bit machine).

In XE2, the location of the runtime packages changed to a directory in the Program Files\Embarcadero tree and a separate entry in added to the System PATH (so that the Windows loader can find the shared packages).  The CodeSite Express installer was not aware of this change and since it does not find an existing version of vcl160.bpl in the System32 (or SysWOW64) directory it installs one. This "extra" older vcl160.bpl file is what is causing the conflict.

Instead of uninstalling CodeSite Express, you can resolve the issue by simply deleting (or renaming) the vcl160.bpl file in the System32 (or SysWOW64) folder.  Then debugging apps with runtime packages will work correctly.  Furthermore, CodeSite Express will still work correctly because the Viewers will use the version of vcl160.bpl that was installed by the RAD Studio installer.

Ray

Tomohiro Takahashi at 8/27/2013 6:07:23 PM -
This issue should be fixed in Delphi XE4 Update1.

Server Response from: ETNACODE01