Procedure Entry Point invalid in JVCL (jclsysinfo)

565 Views Asked by At

I've installed latest Jedi VCL for Delphi (JVCL 3.49) using install.bat (from jcl and jvcl folders respectively), without errors. The problem is when I run Delphi 2010, I get a lot of errors about invalid entry point in jvcl bpls.

entry point invalid @jclsysinfo@jclcheckwinversion$qqrri in JvCore140.pbl

I get this error in all Jv*.bpl files, and always with the same entry point.

I've checked I don't have old jcl/jvcl files or jv*.bpl/jc*.bpl files. I don't know how to fix this problem. Any sugestion?

2

There are 2 best solutions below

0
On

When compiling packages in Delphi (as the JCL and JVCL do) that require other packages at compiletime the compiler uses the dcp files for the required packages and not the bpl files of those packages.

For example the JvCore.dpk has Jcl and JclVcl in its required clause among some RTL packages. That means when compiling it will take Jcl.dcp and JclVcl.dcp to get the information where the procedures/classes it needs are located in the bpl.

These dcp files are most of the time (unless specified differently - see next paragraph) located in the DCP folder which is right next to the BPL folder.

If the dcp it uses is not compatible to the bpl it finds when loading you will get those errors. Make sure you don't have any old bpl and dcp files anywhere that the compiler may find. In the JCL setup you can specify where it puts those while the JVCL setup puts them into the same directory as the dcu files.

Additionally if you have different Delphi versions installed it can get worse because usually the dcp files don't have a suffix. If the directory it puts those happens to be in the PATH variable wrong versions might be found. However the DCP directory is not put into PATH by the Delphi installation but only the BPL directory.

0
On

(While I've been writing this, Stefan Glienke has posted an answer which has a lot more useful info in it, but I'll post it anyway because it's easy to test if you're only interested in one Delphi version)

I'm not sure the following will work for you because I don't have D2010 installed to test it against. You could check it out quite quickly by trying it using only one .Dpk file in step 4.

Note that I always set the Output paths for BPL, DCP and DCU files to a Lib2 folder under the Delphi version's install folder. That way I know where they all are so it's easier to tidy up if something goes wrong.

  1. I uninstalled the JCL and JVCL and deleted all the JV*.BPL, .DCP and .DCU files

  2. I ran the JCL install .bat, and ignored all the prompts to add folders to the system PATH, because my Lib2 folder is already on the PATH.

  3. In the folder for my Delphi version below JVCL\Packages, I edited all the .Dpk files to use my Lib2 folder for the BPL, DCP and DCU output files. this is a bit tedious but only needs to be done once and can be made easier by doing it using a keyboard macro.

  4. Then, using the IDE package tool, compiled and installed all the JVCL .Dpk files that have "Design" in their names and that I want to install.

They all installed without ther error message you are getting.