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
 DLL exception at TIEBitmap.GetIEVisionImage in 14.2
 New Topic  Reply to Topic
Author Previous Topic Topic Next Topic  

Harald

Germany
10 Posts

Posted - Aug 04 2025 :  07:14:05  Show Profile  Reply
Hello. After updating to 14.2 and IEVision 8.1.6, the error
“A required library file (ievision.dll) has not been initialized or is outdated (Version expected: 8.1.6.0)”.

...
LWidth := LPDF.PageInfo[i].Size.X * (LPDF.PageInfo[i].UserUnit / 72);
LPPI := round(LBmp.Width / LWidth);
LIEBmp.Assign(LBmp);
LIEImg := LIEBmp.GetIEVisionImage; // => Exception
LIEImg.setDPI(LPPI);
LPDFGen.addPage(LIEImg, ievPDFImgFmt_AUTO);

The error did not occur with version 13.6 and IEVision 8.1.4. I replaced the DLL in the program directory; it is version 8.1.6.0.

Thanks, Harald

Document Management http://www.officemanager.de/en

xequte

39117 Posts

Posted - Aug 04 2025 :  18:05:56  Show Profile  Reply
Hi Harald

I suspect an old version is lurking on the system there. Please post/send your DLL loading log:

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

Note: You can also check the version of DLL files, by right-clicking them and viewing the properties.

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

Harald

Germany
10 Posts

Posted - Aug 05 2025 :  04:54:24  Show Profile  Reply
Hello Nigel. So far, I have only initialized the DLL with
IEVisionSetSerialNumber(Cfg.IEVisionMail, Cfg.IEVisionSN);

It was interesting that it worked when I additional called
ShowMessage( IEGlobalSettings().ImageEnVersion.Status );


I now use
if not (iepiIEVision in IEGlobalSettings.ActivePlugIns) then
  IEGlobalSettings.RegisterPlugIns([iepiIEVision], Cfg.IEVisionMail, Cfg.IEVisionSN);

to initialize the DLL.

Thanks, Harald

Document Management http://www.officemanager.de/en
Go to Top of Page

xequte

39117 Posts

Posted - Aug 05 2025 :  17:48:33  Show Profile  Reply
Hi Harald

Yes, you need to explicitly call RegisterPlugIns() or IEVisionAvailable() to register the DLL.

Our preferred method is:

procedure TMainForm.FormCreate(Sender: TObject);
const
  User_Email  = '...';
  User_Serial = '...';
begin
  IEGlobalSettings().RegisterPlugIns([iepiIEVision], User_Email, User_Serial );
  if not ( iepiIEVision in IEGlobalSettings().ActivePlugIns ) then
    ShowMessage( 'This application requires the ievision.dll plug-in, v' + IEVC_EXPECTED_LIBRARY_VERSION +'.' );
end;



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