ImageEn for Delphi and C++ Builder ImageEn for Delphi and C++ Builder

 

ImageEn Forum
Profile    Join    Active Topics    Forum FAQ    Search this forumSearch
Forum membership is Free!  Click Join to sign-up
Username:
Password:
Save Password
Forgot your Password?

 All Forums
 ImageEn Library for Delphi, C++ and .Net
 ImageEn and IEvolution Support Forum
 Usage of gPDFiumDllFileName to specify dll-path is broken in Imageen 15.0.0
 New Topic  Reply to Topic
Author Previous Topic Topic Next Topic  

BBriefs

Germany
7 Posts

Posted - May 20 2026 :  06:55:00  Show Profile  Reply
Hello,
I just updated from Delphi 12.3 to Delphi 13.1, for which I also installed the latest Imageen version (from 14.0.0 to 15.0.0).
In one of my programs I have implemented an option to load the iepdf32.dll from a certain location under a different name instead of as "iepdf32.dll".
For this explicit purpose I use gPDFiumDllFileName and set it to the full path of the DLL under its different name.
In Imageen 14 this worked fine, in Imageen 15 the program isn't able to find the dll anymore.

Since I have the source code of both versions I compared the units and it seems to me that in "iexPDFiumCore" in the function "InitPDFiumLib" the usage of gPDFiumDllFileName is completely broken:

If gPDFiumDllFileName isn't empty, "DLLPath" is set to gPDFiumDllFileName + '\', then afterwards "InitPDFiumEx" is executed on DLLPath + "iepdf32.dll", which in my case amounts to something like "...\myname.dll\iepdf32.dll", which obviously cannot ever work.

In Imageen 14.0.0 gPDFiumDllFileName was used directly for InitPDFiumEX instead if not empty.

I would be grateful if that could be fixed, as I can't see an easy workaround without editing the Imageen source code, which I would like to avoid if possible.

xequte

39420 Posts

Posted - May 20 2026 :  18:19:57  Show Profile  Reply
Thanks for the report. I'm out of the office until next week, so will need to check after that.

Can you tell me whether it also fails if you pass the full path to RegisterPlugIns (which is the documented method):

IEGlobalSettings().RegisterPlugIns( 'C:\My Dlls\MyApp\XyzViz.DLL', [iepiPDFium] );

http://www.imageen.com/help/TIEGlobalSettings.RegisterPlugIns.html

Nigel
Xequte Software
www.imageen.com
Go to Top of Page

BBriefs

Germany
7 Posts

Posted - May 21 2026 :  02:26:31  Show Profile  Reply
Yes, I've tried that first but that fails too because RegisterPlugIns eventually also calls InitPDFiumLib with that full path as parameter DLLPath.
Unfortunately InitPDFiumLib was changed in such a fashion that both the parameter DLLPath and gPDFiumDllFileName are treated as folder paths without filename, to which then "iepdf32.dll" is added categorically.
So if your DLL isn't named "iepdf32.dll", trying to load it will always fail.
Go to Top of Page

xequte

39420 Posts

Posted - May 21 2026 :  17:36:41  Show Profile  Reply
OK, thanks for the testing that. I'll send you a beta next week to resolve this.



Nigel
Xequte Software
www.imageen.com
Go to Top of Page

xequte

39420 Posts

Posted - May 27 2026 :  00:49:05  Show Profile  Reply
Hi

Please email us for the latest beta which fixes this.

Note: You now need to pass a path to RegisterPlugIns() rather than use gPDFiumDllFileName

Nigel
Xequte Software
www.imageen.com
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
Jump To: