admin管理员组

文章数量:1252714

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:

  • Using MS Builder to compile (in Project Options). I got a different error there while building:

    [Fatal Error] Can't load package CEF4Delphi_designtime.bpl. The system cannot find the file specified"

  • Setting BDSReg.exe to run as administrator (a forum post for a similar problem suggested this). It didn't work.
  • Reviewing the PATH environment variable and the Delphi Library paths and similar settings. They all appear to be okay.

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:

  • Using MS Builder to compile (in Project Options). I got a different error there while building:

    [Fatal Error] Can't load package CEF4Delphi_designtime.bpl. The system cannot find the file specified"

  • Setting BDSReg.exe to run as administrator (a forum post for a similar problem suggested this). It didn't work.
  • Reviewing the PATH environment variable and the Delphi Library paths and similar settings. They all appear to be okay.
Share Improve this question edited Feb 14 at 12:56 Philip J. Rayment asked Feb 14 at 6:05 Philip J. RaymentPhilip J. Rayment 1,2357 silver badges14 bronze badges 6
  • Use actual version numbers instead of relative ones like "latest stable version". What's the actual question? – AmigoJack Commented Feb 14 at 8:41
  • Check your PATH for .bpl files that were compiled with a different Delphi version but have the same name as the ones for Delphi 12. – dummzeuch Commented Feb 14 at 9:20
  • @dummzeuch Thanks, that was it. I had checked that Delphi was pointing to the right place, but overlooking that Windows knew about both versions, and subconsciously thinking that Windows might need those older versions for apps built with the older version. That part of how Windows works has always been unclear to me. And it wasn't (only?) the design-time .bpl that was the problem, but the run-time ones that it referred to. – Philip J. Rayment Commented Feb 14 at 13:00
  • @PhilipJ.Rayment I made this an answer, please accept it. I just had exactly the same problem: I had upgraded packages to Delphi 12 but not changed the lib suffix so my Delphi 10.2 bombed out because it found the Delphi 12 packages first. – dummzeuch Commented Feb 14 at 14:39
  • @dummzeuch Gladly. Done. – Philip J. Rayment Commented Feb 15 at 4:35
 |  Show 1 more comment

1 Answer 1

Reset to default 2

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 fot 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.

本文标签: delphiRegistration procedure raised access violation exceptionStack Overflow