1. Aron Cox
  2. PowerBuilder
  3. Thursday, 18 February 2021 10:13 AM UTC

We have a big old client-server PowerBuilder application. We will upgrade to PowerBuilder 2019 R3 in the near future and are thinking about having both a 32-bit and a 64-bit version for various reasons.

Does anyone have any success / horror stores of going to 64-bit? It is generally considered pretty simple as long as you handle the databsese drivers, Active/X controls, registry locations etc.

Are there any known gotchas or reliability issues or performance issues I should be aware of?

Thank you, any information gratefully received.

Miguel Leeuwe Accepted Answer Pending Moderation
  1. Thursday, 18 February 2021 16:49 PM UTC
  2. PowerBuilder
  3. # 1

We'd like to "upgrade" to 64 bit, but because of the complications of using visual activeX controls in a 32 bit IDE, we are going to wait as long as possible, until the IDE is 64 bit or allows at least pasting a 64 bit activX control on a window somehow.

I do have to admit that maybe it's time to try to use a 32 bit version to "build" in the IDE and then see how it behaves when also having the 64 bit control installed and compiling as 64 bit. Unknown grounds for me, as before, that was definitely a big complication, but things might have been improved by Appeon.

regards.

Comment
  1. Aron Cox
  2. Thursday, 18 February 2021 22:11 PM UTC
Oh yes! I have a 32-bit visual Active/X control I've created in .NET, and as you say, I'm not sure how I would use it in the 64-bit compilation??? I've noticed soemthing goes at the bottom of the window if you edit the exported defintion, but no idea how to determine what should replace it or if it even needs replacing. I guess some testing is required.
  1. Helpful
  1. Miguel Leeuwe
  2. Thursday, 18 February 2021 22:14 PM UTC
Yes, it’s on my todo-tomorrow list
  1. Helpful
  1. Miguel Leeuwe
  2. Thursday, 18 February 2021 22:16 PM UTC
I’ve read about people creating the visual with openuserobject with some success, but I don’t want to go that road, time is on my side on this luckily
  1. Helpful
There are no comments made yet.
John Fauss Accepted Answer Pending Moderation
  1. Thursday, 18 February 2021 15:12 PM UTC
  2. PowerBuilder
  3. # 2

Hi, Aron - 

Appeon has done a good job in resolving the many issues they inherited from SAP's muddled foray into 64-bit in PB v12.6. However, upgrading deployment bitness is not always a trivial task. It really depends on the application.

Does you legacy app utilize any Windows API calls or interface with third-party DLL's via external function declarations? There are some subtle changes concerning 64-bit: Arguments which are Windows handles are eight bytes long instead of four and this can effect the in-memory size and affect member padding within Windows API structures. Having helped several Community members with issues related to this, I can attest these can be (not always) difficult to identify. Not all API functions are affected, however.

You'll need 64-bit versions of any third-party DLL's your app interfaces with.

It sounds like you are aware of bitness-related implications on database drivers and Active-X usage. Does your app use MAPI to interface with email? Does it interface with any of the MS Office products? Rich Text?

Of course, the PB IDE and debugger are 32-bit, so you will continue to develop, debug and run the app from within the IDE as 32-bit. 64-bit only comes into play when the app is compiled/deployed. Debugging of issues that appear only in 64-bit can be difficult.

In case you have not seen it, here is a link to an overview of 64-bit deployment concerns:

https://docs.appeon.com/pb2019r3/application_techniques/ch09s03.html#Deploying_64bit

Good luck!

Regards, John

Comment
  1. Aron Cox
  2. Thursday, 18 February 2021 15:33 PM UTC
Thanks, lots of good information there :)



Hmm, I have slowly been converting many API calls to use an in-house .NET COM wrapped assembly, so I may just have to go the whole hog and convert all the remaining ones, while also using the new C# calling features of PowerBuilder 2019 R3.



We still have code that interacts with Office using OLE. I just tested it, and somewhat surprisingly a 32-bit PowerBuilder application can talk to a 64-bit Word with no issues (so far) and a 64-bit PowerBuilder application can talk to a 32-bit Word.



I'll be testing using .NET assemblies to talk to Word from PowerBuilder next, I fully expect to need to match the bitness in this case.



  1. Helpful
  1. Armeen Mazda @Appeon
  2. Thursday, 18 February 2021 15:55 PM UTC
Adding to what John said, you might find this Elevate tech session useful: https://www.appeon.com/developers/library/videos/migrating-powerbuilder-desktop-apps-64-bit.html
  1. Helpful
There are no comments made yet.
Steen Jakobsen Accepted Answer Pending Moderation
  1. Thursday, 18 February 2021 13:27 PM UTC
  2. PowerBuilder
  3. # 3

Yes, We have recently converted to 64 bit. It works GREAT.

However you have to mange development in 32 bit and deployment in 64 and everything is not always working both places due to different dll's

 

But over all we are extremely happy with it and also see a performance gain not to mention the ability to allocate large chunks of memory.

//Steen

Comment
  1. Aron Cox
  2. Thursday, 18 February 2021 14:17 PM UTC
Thank you, that's good to know :)
  1. Helpful
There are no comments made yet.
  • Page :
  • 1


There are no replies made for this question yet.
However, you are not allowed to reply to this question.