Login ProductsSalesSupportDownloadsAbout |
Home » Technical Support » ElevateDB Technical Support » Support Forums » ElevateDB General » View Thread |
Messages 11 to 13 of 13 total |
Dreaded Unit Compiled with Different Version error message after updating EDB. |
Wed, Jun 11 2014 9:20 PM | Permanent Link |
Raul Team Elevate | On 6/11/2014 7:07 PM, Adam H. wrote:
> Although I would have thought that the dcu should have been the same as > the one generated when the .pas file was compiled. The only thing I can > think of is that maybe the .pas file references to the full / server > version where the .dcu doesn't which could make it incompatible. (I've > only got the standard version of EDB and not the full server version). > > Maybe the wrong .pas file was included in the standard distribution? Adam, I think it has more to do with the timestamps of the pas/dcu files as well as the unit dependencies. If pas has changed relative to dcu delphi will recompile a new dcu (i'm guessing here but the way installer installs files might result in them getting newer timestamps so delphi believes it should recompile the dcu from pas since pas is in your project source path). However now if some other dcu relies on this pas then that needs to be be recompiled etc. So in your for example it found "edblockmgr" and decided to recompile the dcu and then it looked at "edbserver.dcu" and since it depends on edblockmgr it says "i must also recompile edbserver since edblockmgr has been updated " but of course it can't find pas for it. You and I know the edbserver is really unchanged but since it has a dependency on newer "edblockmgr.dcu" delphi has no way of knowing that and just looks at timestamps of files and wants to recompile. Anyways, that's my theory. Raul |
Thu, Jun 12 2014 7:04 PM | Permanent Link |
Adam H. | Hi Raul,
<Snip> > You and I know the edbserver is really unchanged but since it has a > dependency on newer "edblockmgr.dcu" delphi has no way of knowing that > and just looks at timestamps of files and wants to recompile. > > Anyways, that's my theory. Well, it sounds like a good one. Thanks for the help, and ave a great weekend. Cheers Adam. |
Thu, Jan 15 2015 4:21 PM | Permanent Link |
Mark Elder | I know this thread is a bit old now, but I had the same problem and what solved it for me was to search my entire hard drive for any EBB*.*dcu files. This highlighted the fact that I had another version/set of files elsewhere that was being picked up by my project. I renamed that older folder to "xyz_bak". Additionally, in my library path, I had the "code\source" folder. You need the "code" folder but do *NOT* include the "code\source" folder in your library path.
Richard "Adam H." wrote: Hi, After updating ElevateDB I'm getting the error: [DCC Fatal Error] edbcomps.pas(38): F2051 Unit edbserver was compiled with a different version of edblockmgr.TEDBLockManager.MaxSesionError I only have the standard version of DBISam, so don't actually have edbserver.pas It breaks in edbcomps.pas on: {$IFNDEF EDB_NOSERVER} edbserver, {$ENDIF} I have tried: - Uninstalling all EDB installations, - Manually deleting the EDB Installation directory - Manually deleting all edb*.dcu files - Reinstalling EDB fresh .... but the problem remains. I'm using Delphi XE2 (32bit). The error even occurs on a blank project if I drop one EDB component on it and do a compile (or build). Obviously I've missed something somewhere, but I can't figure out what else to do. Can anyone see what I'm missing? I was originally on EDB 2.11 I've tried updating to both EDB2.17 and also EDB2.15 (for something different) but both break. Thanks & Regards Adam. |
« Previous Page | Page 2 of 2 | |
Jump to Page: 1 2 |
This web page was last updated on Saturday, May 4, 2024 at 09:18 PM | Privacy PolicySite Map © 2024 Elevate Software, Inc. All Rights Reserved Questions or comments ? E-mail us at info@elevatesoft.com |