Link to home
Start Free TrialLog in
Avatar of rfur72
rfur72

asked on

VCL50 missing in Delphi 2007

Hi All,

I have just installed Delphi 2007 on a new machine and have been trying to install some custom components that were written for us several years ago.  The component in question uses the vcl50 package.  When I click on the component in the Project Manager and choose install, I get a message saying "The runtime packages referenced by this project appear to include old packages.  Whould you like to convert the runtime packages list to reference new packages?"

It does not matter whether I choose yes or no here, I get an error saying:
[DCC Error] ESBWinTab.dpk(30): E2202 Required package 'vcl50' not found

I understand this was an old package from Delphi 5 and have managed to find reference that it should be in my windows/system directory.  Alas, it is not there, or in any folder on my machine.  

Could someone please tell me;
1.  What this message about runtime packages is actually telling me?
2.  What this package does (or did)?
3.  Where can I find it (online?) to be able to put it back on my machine?
4.  Or preferably, what package replaces it so I can upgrade my component.

Thanks

Chris Reardon

SOLUTION
Avatar of Geert G
Geert G
Flag of Belgium image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of rfur72
rfur72

ASKER

Thanks for the quick reply!

I thought that might be the problem, but have tried both vcl70 and vcl100, which are the only two files of a similar name in my windows/system directory.  I gather, from other sources on the net, that vcl100 is the Delphi 2007 VCL package and am assuming that VCL70 is the package from teh Delphi 7 installation I have (will two versions cause problems?).

I am still getting the error message;
[DCC Error] ESBWinTab.dpk(30): E2202 Required package 'vcl100' not found.

Is it supposed to be as simple as changing the line;
requires
  vcl50;

to
requires
  vcl100;

which gives me the error, or do I have to do something else somewhere?

Alternatively I have found the file vcl.dcp file in the lib folder under the delphi install location.  Including this instead allows me to compile the package, but with warnings that;
[DCC Warning] esbtablet.pas(214): W1000 Symbol 'FreeObjectInstance' is deprecated
[DCC Warning] esbtablet.pas(316): W1000 Symbol 'MakeObjectInstance' is deprecated

I believe I can fix these by finding the replacements for these.  I just want to make sure vcl.dcp is the correct file before I continue.

Thanks again for your help.

Chris Reardon


 
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
ASKER CERTIFIED SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Some additional information that may help understand this and similar issues dealing with third-party component packages:
Delphi components involve two distinctly different packages. One contains runtime code and the other code that is only used at design time (by the Delphi IDE). The design time package will most likely have dependencies on the runtime package.
In this particular case where an upgrade was needed, trying to build the design time package prior to building the runtime package (with the proper dependencies) triggered the initial errors. It's always best to build the design time package first or, as in the final solution to this particular issue, edit both packages allowing Delphi to determine which to build first.
>>It's always best to build the design time package first or, as in the final solution to this particular issue, edit both packages allowing Delphi to determine which to build first.

i'm sure you mean the opposite
first build the runtime package
next the design time package
because the designtime package uses the runtime package
Avatar of rfur72

ASKER

Thanks again.

Packages are not something I have ever had to play with before, but they certainly seem to have their uses once you understand them.