#1  
Old 7th April 2024, 05:18 AM
AndyPhotoBell AndyPhotoBell is offline
Junior Member
 
Join Date: May 2020
Posts: 29
Default BCB 12.1 and Nexus 4.7505 - AV on startup

I've just built Nexus 4.7505 on the newly released RAD Studio 12.1.

I built Nexus for 32 bits and the new 64 bit (Modern) target.

The attached project can be used to demonstrate what I've found - you'll need to adjust it for server name and alias paths, etc.

C++ 32 Bit App, Remote Server:

Build without runtime packages - no issues
Build with runtime packages - AV on app startup - see screenshot for details

C++ 32 Bit App, Embedded Server:

Build without runtime packages - AV on app startup
Build with runtime packages - AV on app startup

C++ 64 bit (Modern) (the new C++ compiler) Both embedded and remote server:

Build without runtime packages - app runs correctly
Build with runtime packages - not yet supported by toolchain

It looks to me that embedded 32 bit C++ Builder 12.1 + Nexus 4.7505 has issues on startup.

Remote C++ Builder 32 bit works when no runtime packages are used, but AVs when built with runtime packages. This is the opposite of what used to happen.

The new 64 Bit (Modern) target is working well without runtime packages. It doesn't support runtime packages yet, so I can't test that. Maybe there are bugfixes for both Delphi and C++ Builder in the new 64 bit (Modern) target that makes it work. Or maybe it's just coincidental. My test app doesn't do a lot. It tests a TnxTable + DB Grid. The new 64 bit target runs successfully and allows table edits, both with remote and embedded servers. I have also tested it with a TnxQuery component, with the same results.

Based on this quick test I am unsure if NexusDB is usable in C++ Builder 12.1 As I'm aiming to switch to the new 64 bit target ASAP I'm hoping that the good results I've seen will continue with a proper app, but I'd like to know what the Nexus Developers make of these results first...

Andy
Attached Files
File Type: zip bugs.zip (598.0 KB, 1 views)
  #2  
Old 9th April 2024, 12:34 PM
Rodrigo Gómez Córdova
 
Posts: n/a
Default Re: BCB 12.1 and Nexus 4.7505 - AV on startup

Hello Andy,

I haven't yet checked your project, but I saw similar issues when
updating to 4.75 and the problem was that the DD package was not being
included in the runtime packages list of the exe.

The IDE, in my experience, is very dumb to update the used packages of
an existing project. It basically adds all the installed packages at the
time of the project creation and that's it.

It works a little big better with packages (not exes) but still, you
need to add a unit that includes #pragma link to some unit included in
some package, for that package to be added automatically to the used
packages of the Package. <that was a mouthfull!>.

I'll try to check your project tomorrow, but please check if adding the
DD package to the runtime packages to use in the project options solves
the AV.

HTH,

AndyPhotoBell wrote on 06/04/2024 11:18 a. m.:
> I've just built Nexus 4.7505 on the newly released RAD Studio 12.1.
>
> I built Nexus for 32 bits and the new 64 bit (Modern) target.
>
> The attached project can be used to demonstrate what I've found - you'll
> need to adjust it for server name and alias paths, etc.
>
> C++ 32 Bit App, Remote Server:
>
> Build *without* runtime packages - no issues
> Build *with runtime packages* - AV on app startup - see screenshot for
> details
>
> C++ 32 Bit App, Embedded Server:
>
> Build without runtime packages - AV on app startup
> Build with runtime packages - AV on app startup
>
> C++ 64 bit (Modern) (the new C++ compiler) Both embedded and remote
> server:
>
> Build without runtime packages - app runs correctly
> Build with runtime packages - not yet supported by toolchain
>
> It looks to me that embedded 32 bit C++ Builder 12.1 + Nexus 4.7505 has
> issues on startup.
>
> Remote C++ Builder 32 bit works when no runtime packages are used, but
> AVs when built with runtime packages. This is the opposite of what used
> to happen.
>
> The new 64 Bit (Modern) target is working well without runtime packages.
> It doesn't support runtime packages yet, so I can't test that. Maybe
> there are bugfixes for both Delphi and C++ Builder in the new 64 bit
> (Modern) target that makes it work. Or maybe it's just coincidental. My
> test app doesn't do a lot. It tests a TnxTable + DB Grid. The new 64 bit
> target runs successfully and allows table edits, both with remote and
> embedded servers. I have also tested it with a TnxQuery component, with
> the same results.
>
> Based on this quick test I am unsure if NexusDB is usable in C++ Builder
> 12.1 As I'm aiming to switch to the new 64 bit target ASAP
> I'm hoping that the good results I've seen will continue with a proper
> app, but I'd like to know what the Nexus Developers make of these
> results first...
>
> Andy
>
>
> +-------------------------------------------------------------------+
> |Filename: bugs.zip |
> |Download: http://www.nexusdb.com/forums/attachment.php?attachmentid=2141|
> +-------------------------------------------------------------------+
>

  #3  
Old 10th April 2024, 01:25 AM
AndyPhotoBell AndyPhotoBell is offline
Junior Member
 
Join Date: May 2020
Posts: 29
Default

Quote:
Originally Posted by Rodrigo Gómez Córdova View Post
Hello Andy,


I'll try to check your project tomorrow, but please check if adding the
DD package to the runtime packages to use in the project options solves
the AV.

HTH,
Thanks for the feedback. It'll be tomorrow before I have time to test this.

I'm still puzzled why the new 'Modern' 64-bit compiler worked correctly when built without runtime packages, whereas the old 64 and 32 bit versions don't. But i wonder if that is a question for Embarcadero support?

They told me in the past that the initialisation order for BPLs and LIBs is different, and that is the likely reason for errors when using Nexus in apps without runtime packages.

Andy
  #4  
Old 16th April 2024, 09:14 AM
Rodrigo Gómez Córdova
 
Posts: n/a
Default Re: BCB 12.1 and Nexus 4.7505 - AV on startup

Hello Andy,

> Thanks for the feedback. It'll be tomorrow before I have time to test
> this.
>


Did you managed to check this? I haven't been able to compile and try
your test case, as I don't have yet a working 12.1 environment, but I
did check the project source and the DD package is not listed in the
used packages, so I strongly believe the AV is because of that and it
will get solved adding that package.

> I'm still puzzled why the new 'Modern' 64-bit compiler worked correctly
> when built without runtime packages, whereas the old 64 and 32 bit
> versions don't. But i wonder if that is a question for Embarcadero
> support?


Uh, that is interesting. I was sad that the new compiler did not support
runtime packages as then it wouldn't have any sense for me to try and
upgrade there yet... actually even mentioned that in some webinar some
weeks ago with Embarcadero. Maybe they did fix that error with the new
compiler, although I would think by coincidence mostly <vbg>.

HTH,

Rodrigo Gómez



Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
RAD Studio 11.1.5 hangs on startup with Nexus Embedded (Free) Installed AndyPhotoBell nexusdb.public.support 3 29th July 2022 04:47 AM
Slow startup David Rose nexusdb.public.support 9 28th May 2016 11:46 AM
Exceptions on startup mmitton nexusdb.public.support.cbuilder 5 19th August 2015 07:00 AM
Nexus DB server 1.08 startup issues DiPersiaTech nexusdb.public.support 3 26th October 2011 04:52 PM
D2005 Startup. Nexus, you should be here! John E. Wilfong Binaries 0 6th October 2005 05:29 PM


All times are GMT +11. The time now is 06:44 AM.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.