1. Rama Mohana Rao Ramisetty
  2. PowerBuilder
  3. Thursday, 1 October 2020 21:49 PM UTC

Hi All,

We have 2 Power builder applications running on PB 2017R3 1858. These 2 apps can communicate each other, that means Application A can launch Application B and vice versa.

In Windows 7 computers these 2 application calls are working fine and they are able to communicate each other.

But in WINDOWS 10 computers, the calling application (Ex: Application A) is getting hung every time when it calls Application B vice versa. When we check the wait chain of the application A, noticed that our root node (Application A.exe) is waiting for child node (like atmgr.exe or lync.exe or excel.exe or word.exe) and is never getting released by child node. 

We are using DDE protocol to communicate each other application.

Note: We recently migrated from PB 9 to 2017R3 1858 and this problem started. 

Kindly advise the solution. 

 

Chris Pollach @Appeon Accepted Answer Pending Moderation
  1. Thursday, 15 October 2020 20:17 PM UTC
  2. PowerBuilder
  3. # 1

Hi Rama;

  An update from one of our Appeon PB customers. They were working with Microsoft support directly and here is what MS said .... " DDE was broken with KB4571756, and fixed with the preview build KB4577063, which has been rolled up into KB4579311 for Windows 10 version 2004"

HTH

Regards ... Chris

Comment
There are no comments made yet.
Miguel Leeuwe Accepted Answer Pending Moderation
  1. Friday, 2 October 2020 01:53 AM UTC
  2. PowerBuilder
  3. # 2

FWIW: we stopped using DDE long long time ago, since it just didn't work right any more, way back in the days of Windows Vista or early Win 7 versions.

Even though "deprecated" during one of the 11.x versions, I still managed to get the OLE Automation Server to work with pb 12.6, but it's very painful to deploy, so I definitely would not recommend it.

 

Comment
  1. Miguel Leeuwe
  2. Friday, 2 October 2020 22:40 PM UTC
Hi Chris,

"Today" luckily I don't have to communicate between one pb app and another, but if I would, I'd probably use one of the winsock / TCP IP solutions out there. Probably there's something in your tools too that we could use :)

We do use some Shared Object/Variable to simulate asynchronous retrieval of a certain dw. I'm wondering if it would be somehow possible to Share a same object between 2 completely different powerbuilder apps ?. (don't think it would, but that would be awesome).



For all the "other stuff" that previously could be done using DDE, we just use good old OLE.

regards.
  1. Helpful
  1. Chris Pollach @Appeon
  2. Monday, 5 October 2020 14:56 PM UTC
Unfortunately, Shared Objects only works within the same App. :-(
  1. Helpful
  1. Miguel Leeuwe
  2. Monday, 5 October 2020 16:57 PM UTC
Kind of logical too :)
  1. Helpful
There are no comments made yet.
Chris Pollach @Appeon Accepted Answer Pending Moderation
  1. Thursday, 1 October 2020 23:47 PM UTC
  2. PowerBuilder
  3. # 3

Hi Armeen;

   I've been talking to Rama on WebX and he informed me that AppA & AppB communicate to one another via DDE. Also, AppA communcates to MS-Word at the same time using DDE. Both DDE conversations are "cold links".

  It could be possible (my guess) that DDE itself is not supported properly by W10. Especially, since Microsoft deprecated DDE in favour of OLE many Window releases ago. Also, we have another customer whose DDE conversation between PB Apps totaly stopped working when an MS-Windows KB4571756 was applied. Removing the KB allowed DDE to start working again.

  Since Ram requires both AppA & AppB as both working in a client / server mode, replacing OLE for DDE is out as Sybase dropped the "OLE Server" feature from PB in v 12.0. So the only replacements (AFAIK) for DDE could be PB's Send() Command or using TCP/IP between the two Apps.

Regards ... Chris

Comment
  1. Armeen Mazda @Appeon
  2. Friday, 2 October 2020 01:35 AM UTC
Thanks for the details Chris. Seems you are confirming my suspicion that it is Windows 10 issue rather than PB issue. While I didn't know the details you shared, it just seemed absolutely ridiculous to me that PB 9 would work better on Windows 10 than PB 2017!!! And to be fair to Microsoft, I don't even think it is appropriate to say this is a Windows 10 issue since as you pointed out Microsoft deprecated DDE long time ago. This case serves as good reminder of the risks of keep using obsolete features.

  1. Helpful
  1. John Fauss
  2. Friday, 2 October 2020 01:49 AM UTC
I did a VERY quick web search today and saw numerous hits describing how Microsoft has disabled DDE in later versions of Office. Also many posts that discourage use of DDE due to vulnerability to hackers, but I presume those posts were referring to "Network DDE".

It it were me, I would try temporarily disabling the DDE connection to MS-Word and see if the problem persists, for I suspect that is where AppA is hanging. If that is the case, the question then becomes how to address the issue. Perhaps refactoring the AppA/MS-Word piece to use OLE instead of DDE and continue to use DDE for AppA/AppB communications, although continuing to rely on technology as ancient as DDE is not, as they say, "forward thinking." Maybe replace that piece with WinSock?
  1. Helpful
  1. Chris Pollach @Appeon
  2. Friday, 2 October 2020 02:02 AM UTC
Hi Armeen;

PB 9 would have been using DDE in ANSI mode. The default when using the SetRemote() command in later PB releases defaults to Unicode. However, the SetRemote() command has an optional argument to flip the DDE session into ANSI mode. I've asked Rama to have their PB team try this option (which they do not use).

Regards ... Chris
  1. Helpful
There are no comments made yet.
Armeen Mazda @Appeon Accepted Answer Pending Moderation
  1. Thursday, 1 October 2020 21:58 PM UTC
  2. PowerBuilder
  3. # 4

Do you mean with PB 9 running on Windows 10 there is no problem but with PB 2017 on Windows 10 there is?  I just want to make sure you are comparing apples to apples.

Comment
  1. Rama Mohana Rao Ramisetty
  2. Thursday, 1 October 2020 22:10 PM UTC
Hi Armeen,



No. As PB 9 does not support WINDOWS 10 we migrated to PB 2017R3.

So now the issue with PB 2017 R3 with WIN 10.



Thanks,

Ram



  1. Helpful
  1. Armeen Mazda @Appeon
  2. Thursday, 1 October 2020 22:16 PM UTC
I think there is a good chance this is caused by difference between Windows 7 and 10 rather than difference between PB 9 and 2017 R3. My best guess is that it is a security issue of Windows 10 blocking the technique you were using. Let's see if others in community have suggestion on what you need to do different on Windows 10 to make this work.
  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.
We use cookies which are necessary for the proper functioning of our websites. We also use cookies to analyze our traffic, improve your experience and provide social media features. If you continue to use this site, you consent to our use of cookies.