I recently installed Delphi Athens CE and downloaded the latest stable version of CEF4Delphi (131.0.6778.265) and tried to build and install it. (It has three packages: one for VCL, one for FMX, and a design-time package.) Building went okay on all three, but trying to install the design time package raised this exception:
Registration procedure @Cef4delphivclfmx_register@Register$qqrv.Register in package {my path}\bpl\Win32\Debut\CEF4Delphi_designtime.bpl raised exception class EAccessViolation: Access violation at address 65950520 in module 'rtl290bpl'. Read of address FFFFFFD0.
I'm posting here rather than on the CEF4Delphi forum as it appears to me to be more of a Windows issue than a CEF4Delphi one (although I have successfully recompiled and installed a number of my own packages). I've also successfully installed an earlier version of CEF4Delphi with Delphi 11.
What I've tried:
[Fatal Error] Can't load package CEF4Delphi_designtime.bpl. The system cannot find the file specified"
BDSReg.exe
to run as administrator (a forum post for a similar problem suggested this). It didn't work.PATH
environment variable and the Delphi Library paths and similar settings. They all appear to be okay.The problem usually is that the IDE, when loading a package, uses the search PATH
and finds one that has the expected name but was compiled with a different version of Delphi. The reason for this most of the time is that when you upgraded a package manually you forgot to change the name or the Lib Suffix for it.
So: check your PATH
environment variable (system and possibly user) for .bpl
files that were compiled with a different Delphi version but have the same name as the ones for Delphi 12. And if you find any, delete or move them. Then check where they came from and fix that package so the names of the .bpl
files are unique for each Delphi version.
Note: reordering the directories in PATH
to first find the new ones might work, but if you are using multiple versions of Delphi in parallel you will only move the problem to a different IDE.