Watch, Follow, &
Connect with Us

For forums, blogs and more please visit our
Developer Tools Community.


Welcome, Guest
Guest Settings
Help

Thread: EReadError with message 'Ancestor for 'cal909_' not found.


This question is answered. Helpful answers available: 2. Correct answers available: 1.


Permlink Replies: 2 - Last Post: Nov 20, 2015 5:56 PM Last Post By: David Cox
David Cox

Posts: 28
Registered: 7/6/07
EReadError with message 'Ancestor for 'cal909_' not found.  
Click to report abuse...   Click to reply to this thread Reply
  Posted: Nov 19, 2015 12:27 PM
Hello All,

I am converting my Delphi XE2 application to Delphi 10. In two of my delphi forms I use a frame that works without a problem in XE2, but gives me an error when I try and run the app in 10. It compiles correctly, but when I try and run it I get an EReadError with message 'Ancestor for 'cal909_' not found.

If I exit and reenter Delphi 10 when the app gets loaded I get a popup error message "Modifications to component cal909_ were recorded in the form FormNameA but the ancestor component was not found in the FormNameA" where FormnameA is the frame.

Any ideas as to what I am doing wrong?

Thank you for your help!

Dave
Peter Below

Posts: 1,227
Registered: 12/16/99
Re: EReadError with message 'Ancestor for 'cal909_' not found.  
Click to report abuse...   Click to reply to this thread Reply
  Posted: Nov 20, 2015 9:14 AM   in response to: David Cox in response to: David Cox
David Cox wrote:

Hello All,

I am converting my Delphi XE2 application to Delphi 10. In two of my
delphi forms I use a frame that works without a problem in XE2, but
gives me an error when I try and run the app in 10. It compiles
correctly, but when I try and run it I get an EReadError with message
'Ancestor for 'cal909_' not found.

If I exit and reenter Delphi 10 when the app gets loaded I get a
popup error message "Modifications to component cal909_ were recorded
in the form FormNameA but the ancestor component was not found in the
FormNameA" where FormnameA is the frame.

Any ideas as to what I am doing wrong?

You typically get this kind of error if you drop a frame on a form,
then modify a property of the embedded frame, and later edit the frame
unit itself by removing or renaming the property.

The first thing you should try in D10 (after closing the form that
caused the loading error without saving any changes the IDE may have
made or proposed to you) is to create a new form, select the frames
tool from the component palette, and click on the form as if you wanted
to drop a frame there. Examine the list of offered frame classes
closely. Is any of the frames you had in XE2 missing in the list? If
so, remove the frame unit from the project and directly add it again.
This will update the DProJ file with some missing information the IDE
uses to identify frames you can drop.

Then call up the repository dialog (File -> New -> Others) and examine
the list of classes offered on the "inheritable items" tab. If any of
the form or frame (or datamodule) classes you expect to be there from
the XE2 project is missing, proceed as above: remove its unit from the
project and add it again.

Also examine the path entries in the project options and also in the
IDE Tools->Options dialog. Make sure you don't have references to
XE2-specific folders in there. This is especially important if you
updated any 3rd-party components you use and have source for: the
source folder for the XE2 version should not be on any of the D10 path
entries (unless you can rebuild the code from that source in D10, of
course).

There are a lot of things that can go wrong if you try to update an
existing project for a new Delphi version by just opening the project
file...

--
Peter Below
TeamB
David Cox

Posts: 28
Registered: 7/6/07
Re: EReadError with message 'Ancestor for 'cal909_' not found.  
Click to report abuse...   Click to reply to this thread Reply
  Posted: Nov 20, 2015 5:56 PM   in response to: Peter Below in response to: Peter Below
Thank you Peter.

I narrowed down to where the problem was occurring and it is a control by a third party software company. I contacted the company (TMS) and they are aware of a problem with certain controls on frames in D10.

I appreciate your help.

Dave
Legend
Helpful Answer (5 pts)
Correct Answer (10 pts)

Server Response from: ETNAJIVE02