1. John Kämppi
  2. PowerBuilder
  3. Tuesday, 30 January 2024 08:57 AM UTC

Hi!

I've had a security audit of the app we've made with PowerBuilder 2019.
In that audit an issue came up with the app trying to call C:\pb190t\build\unicode\DrawEx.dll.
To avoid dll hijacking the dll should be placed in the same folder as the app.

 

Now to the problem, I can't find the dll anywhere!

The app works fine when I run it locally where I don't have the dll.

Where can I find this dll?

I don't have a folder C:\pb190t\build\unicode, why does PowerBuilder try to get the dll from that folder?

 

 

Accepted Answer
Andreas Mykonios Accepted Answer Pending Moderation
  1. Wednesday, 31 January 2024 07:24 AM UTC
  2. PowerBuilder
  3. # Permalink
As I stated, I'm not sure... But if I'm right, this would explain why your application doesn't crash if some dll is missing. Don't know how this check is done by PB. But if directx isn't there, the application continues to work. By the way I found some old references that a dll with that name was included in directx 9.0c.
Comment
There are no comments made yet.
Chris Pollach @Appeon Accepted Answer Pending Moderation
  1. Tuesday, 30 January 2024 20:19 PM UTC
  2. PowerBuilder
  3. # 1

Hi John;

  Just do search on your App's Target  for "DrawEx.dll" and that should locate an external declaration in your PB App for it. If the DLL is used somewhere the search will find it. If not, then DLL is probably not used and can most likely be safely removed.  HTH

Regards .. Chris

Comment
There are no comments made yet.
Andreas Mykonios Accepted Answer Pending Moderation
  1. Tuesday, 30 January 2024 09:46 AM UTC
  2. PowerBuilder
  3. # 2

Hi.

I believe this dll is part of directx, but I may be wrong. Are you sure you don't have any graph datawindow with render3d option enabled?

(In runtime, if this option is enabled but directx isn't installed that option will be ignored).

Andreas.

Comment
  1. John Kämppi
  2. Tuesday, 30 January 2024 10:38 AM UTC
It's a huge app so I havn't tested all windows, that would take too long.



I've search on my harddrive and found a DDrawEx.dll but no DrawEx.dll.

You're probably right about the files being a part of DirectX, at least DDrawEx.dll can be found in a directX folder. (and system32 and sysWOW64)



DDrawEx.dll seems to be for later versions of DirectX and DrawEx.dll for a bit older versions of DirectX.



Thanks for the pointer to DirectX!



  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.