Author |
Topic |
|
spurgeon
54 Posts |
Posted - Feb 11 2014 : 12:21:49
|
Can someone post more specific instructions on how to enable ielib32.dll (for 30% faster loading)? The docs don't seem clear. For example, they state to first use IERemovalTool from the registered users page to uninstall the packages. No IERemovalTool exists on that page as far as I can tell. Also, when adding source files to the path before compiling, docs state to "ensure the ImageEn source files and \libs\ folders are listed in your Library path." I can't find any \libs\ folder.
I originally used the ImageEn installer to install the current version to Program Files\ImageEn. From here, I would like instructions to enable ielib32.dll with Delphi XE3.
I understand that there are at least these steps:
1. Some form of uninstall 2. Edit ie.inc and enable the following defines: IEUSEDLLJPEGLIB IEUSEDLLPNGLIB IEUSEDLLJPEG2000LIB IEUSEDLLRAWLIB 3. Recompile packages (*.dpk files) 4. Reinstall *.bpl files
My attempts so far have failed. TIA. |
|
xequte
38615 Posts |
Posted - Feb 12 2014 : 18:27:01
|
Hi
I have updated the documentation as follows:
Installation
Generally you should use the ImageEn installer to handle the compilation and installation of the ImageEn packages. However you can also do it manually as follows...
Note: Before installing ImageEn, remove old versions of it (remove all pkie*.bpl files): 1. In Delphi select Tools -> Options, Library tab. 2. Go through the list of Library paths and check for any that contain ImageEn packages (pkie*.bpl files) 3. Delete any ImageEn packages that you find
COMPILING THE IMAGEEN PACKAGES:
For each version of Delphi/C++ Builder you should have four BPL packages named DPKIECTRL*.BPL, DPKIEDB*.BPL, PKIECTRL*.BPL and PKIEDB*.BPL where * indicates the version, e.g. DPKIECTRL16.BPL for Delphi XE2.
If these were not installed then you can manually compile them as follows:
1. Select Tools -> Options, Library and ensure the ImageEn source files folder is listed in your "Library path"
2. Open and compile PKIECTRL*.DPK, PKIEDB*.DPK, DPKIECTRL*.DPK and DPKIEDB*.DPK (where * is the version number for your Delphi/C++ builder product)
MANUALLY INSTALLING THE IMAGEEN PACKAGES:
If you did not install the ImageEn packages into Delphi/C++ Builder using the installer then you can do it manually as follows:
1. Copy PKIECTRL*.BPL and PKIEDB*.BPL to your Windows "System" folder or Delphi "Bin" folder (where * is the version number for your Delphi/C++ builder product)
Note: The "System" folder is generally "C:\Windows\System32" on a 32bit system or "C:\Windows\SysWOW64\" on a 64bit one. The Delphi “Bin” folder will be similar to: "C:\Program Files\Embarcadero\Rad Studio\7.0\Bin"
2. Select Component -> Install packages, and press Add button. Then select DPKIECTRL*.BPL and DPKIEDB*.BPL (the latter is for database components).
3. Select Tools -> Options, Library and ensure that the ImageEn source folder is in your "Library path".
Nigel Xequte Software www.xequte.com nigel@xequte.com
|
|
|
xequte
38615 Posts |
Posted - Feb 12 2014 : 18:28:33
|
Hi
Please specify in what way your compilation is failing, i.e. what error are you getting from Delphi?
Nigel Xequte Software www.xequte.com nigel@xequte.com
|
|
|
spurgeon
54 Posts |
Posted - Feb 17 2014 : 15:11:05
|
Sorry for the late response. I think I've successfully recompiled after uncommenting the four IEUSEDLL defines, but loading images/raws works whether ielib32.dll is present in the same folder as the exe or not, and loading performance doesn't appear to improve when it is. This leads me to believe I didn't correctly compile for ielib32.dll, or I'm missing something that enables its use.
Here are my steps in XE3:
Remove Packages/Library Reference -------------------------------------------------------- 1. Tools -> Options -> Library: Remove C:\Program Files\ImageEn\DelphiXE3\ from the list 2. Component -> Install Packages... -> Remove ImageEn Controls and Image En DB Controls 3. Delete *.bpl files from these locations: - C:\Users\Public\Documents\RAD Studio\10.0\Bpl (Delphi Bpl folder) - C:\Program Files\ImageEn\DelphiXE3\
Copy Source Files --------------------------- Copy all C:\Program Files\ImageEn\Source\* files to C:\Program Files\ImageEn\Source\DelphiXE3 (or else package compilation complains that source can't be found when using C:\Program Files\ImageEn\Source\DelphiXE3\*.dpk)
Edit ie.inc --------------- Uncomment these lines: {.$define IEUSEDLLJPEGLIB} {.$define IEUSEDLLPNGLIB} {.$define IEUSEDLLJPEG2000LIB} {.$define IEUSEDLLRAWLIB}
Compile and Install Packages -------------------------------------------- 1. Open and compile C:\Program Files\ImageEn\Source\DelphiXE3\PKIECTRL17.DPK (automatically installs BPL to Delphi BPL folder) 2. Open and compile C:\Program Files\ImageEn\Source\DelphiXE3\PKIEDB17.DPK (auto installs BPL to Delphi BPL folder) 3. Open and compile C:\Program Files\ImageEn\Source\DelphiXE3\DPKIECTRL17.DPK 4. In Delphi, right-click DPKIECTRL17.bpl and choose "Install" 5. C:\Program Files\ImageEn\Source\DelphiXE3\DPKIEDB17.DPK 6. In Delphi, right-click DPKIEDB17.bpl and choose "Install"
Add Library Path ------------------------- Add C:\Program Files\ImageEn\Source\DelphiXE3\ to Library (Tools -> Options -> Library)
My program runs fine after doing these steps, but again, it doesn't seem to matter whether I have ielib32.dll present with my exe or not. Any ideas? Thanks for the help. |
|
|
John@Field
United Kingdom
13 Posts |
Posted - Mar 02 2014 : 09:03:32
|
Hi
Thanks for the update on installation.
I had problems installing ImageEn so I came into this forum and found your update:
Note: Before installing ImageEn, remove old versions of it (remove all pkie*.bpl files): 1. In Delphi select Tools -> Options, Library tab. 2. Go through the list of Library paths and check for any that contain ImageEn packages (pkie*.bpl files) 3. Delete any ImageEn packages that you find.
I did a global search of the C: drive using pkie*.bpl then deleted the results.
I then re-ran the installation file and everything was installed correctly.
JWA |
|
|
spurgeon
54 Posts |
Posted - Mar 04 2014 : 13:14:39
|
Did you use ielib32.dll for your installation? I believe I successfully recompiled using my steps listed in the previous post, so I don't think that's the issue for me--the issue is that it doesn't appear to be using ielib32.dll. My goal is the 30% faster loading advertised in the ImageEn docs. |
|
|
xequte
38615 Posts |
Posted - Mar 04 2014 : 20:34:33
|
Hi
If you have recompiled the library correctly then the ielib DLL will be required and you will get an error when you try to load a file type such as JPEG if it cannot be found in the current folder or somewhere on your path.
You can also put a breakpoint on the relevant lines in JPEGFilt.pas to determine what code is being run.
Nigel Xequte Software www.xequte.com nigel@xequte.com
|
|
|
spurgeon
54 Posts |
Posted - Mar 07 2014 : 14:07:51
|
Didn't know you guys slid the ielib32.dll file into the \Windows\System32\ directory on installation... I've been compiling correctly all along, just didn't know the DLL was already in the system path. Got it now. Thanks for the help. |
|
|
|
Topic |
|