Known Issues¶
System and Installation¶
Memory leaks¶
If you use the CRT library to detect memory leaks in your program, it can falsely detect some memory leaks when you use the library.
This is a known limitation of the CRT library memory leak detection scheme. See Microsoft documentation.
It happens when the memory leak detection scheme is ended before the DLL is unloaded or the code in the headers is uninitialized.
eVision installer¶
There is a conflict between the eVision installer and any program using the UDP:6001 port. When a software is already using this port, the installation fails and rolls back.
Workaround: Install eVision first, and then the other software.
Hint
This port is typically used by National Instrument software such as LabView.
Libraries¶
All¶
Since version 24.02, cannot read back the serialization of some objects made with previous versions.
ERectangleRegionorE3DObjectare known to be affected by this issue.
Image File Formats¶
TIFF files containing RGB values + alpha values are not supported.
EasyImage¶
The constructor
EKernelusing anEKernelTypeas parameter does not use the same rectifier as the associated methodConvol.For instance,
EKernel(EKernelType_GradientX)returns a kernel with aEKernelRectifier_KeepPositiverectifier while the methodConvolGradientXuses aEKernelRectifier_Absoluterectifier.
The method
ConvolKerneldoes not have the same border value behavior (constant) as the pre-defined method likeConvolGradientXwhich ismirror.EHarrisInterestPointscan be slow to draw when there are many results.
EasyObject¶
ECodedImage2andEObjectSelectioncan be slow to draw when there are many results.
EasyMatch¶
Matching a vertically symmetric pattern with an angle tolerance around 180° and in the original image can lead to an error of 1 pixel on the detected position.
By default, EasyMatch interpolation does not work on 15 x 15 and smaller patterns.
Workaround: For pattern sizes smaller than 16 x 16, adjust the
MinReducedarea to fit theMinReducedArea < W*H/4(if interpolation is needed).
EasyGauge (Legacy API)¶
In .NET, the
EPointGauge.GetMeasuredPoint()overload with no argument is not available. To get the default measured point, use -1 as index.By design, an
ELineGauge,ERectangleGauge,ECircleGaugeorEWedgeGaugeis reported as invalid if at least one of its sample points is invalid. In addition, these invalid sample points cannot be drawn as they have not been measured successfully.The
EWedgeGauge::SetActiveEdges()method incorrectly gets theEDragHandle_Edge_randEDragHandle_Edge_RRbits mixed up when processing its argument.Workaround: In order to activate the inner circle, set the
EDragHandle_Edge_RRflag and use theEDragHandle_Edge_rflag to activate the outer circle.
Using a gauge on an ROI leads to drawing problems.
Workaround: Use the gauge on the parent image.
In the custom
EDraggingMode_ToEdgesdragging mode, you cannot resize the nominal wedge gauge position using the on-screen handles, neither in a custom application nor in or in Eval.Workaround: Enter numerical values for the wedge gauge position.
When attaching a gauge to a
worldshapeor another gauge, you must keep a reference of this gauge alive (that is keep the gauge in a variable or an array in your program) otherwise it “disappears” from the hierarchy (immediately in C++ , depending on the garbage collector in Python and C#).
EasyMatrixCode¶
EasyMatricCode1
When grading is enabled, the optimizations are made in order to get accurate grading rather than have the best possible reading. As a result, the number of decoding errors reported with grading can be higher than without grading.
Inspecting images with a lot of details, even if they are low contrast, can require much more time spent in EasyMatrixCode than the
TimeOutset previously.
Deep Learning tools¶
Deep Learning tool objects (
EClassifier,EUnsupervisedSegmenter,ESupervisedSegmenter,ELocator,EDeepOCRTool) will not free all the CPU and GPU memory that they allocated at destruction. This is due to third party libraries used for Deep Learning that maintain global caches or buffers.So, it is not recommended to create and delete a lot of Deep Learning tools in the same program.
Licensing¶
Legacy License Manager¶
The Legacy License Manager might not start if the .NET Framework 4.8 is not installed.
Using in English language mode on a Chinese or Japanese Windows version can lead to truncated text being displayed. This is an issue linked to the automatic font selection and there is currently no workaround. Please note however that, by default, the runs in the OS language, including Chinese and Japanese.
Neo License Manager¶
In some cases, offline to offline reactivation may not work.
Long starting time¶
On some installations, the licensing systems can take a long time to start (from 10 seconds up to a few minutes). If you have this issue, you can try the following procedures:
Clean your software license cache.
The software license cache can become bloated by usage.
It can also happen if you use only dongles, as the system checks the presence of software licenses in all cases.
To clean the cache, use the
LicenseManager.exe /DeleteLicenseFilescommand.
Warning
This command deletes all the licenses that are not managed by the on the system. Reactivate these licenses after the cleaning.
Update your system root certificates.
If your root certificates are expired, the validation of the licensing system signatures might fail and timeout.
This only happens if the computer is on a network, even if the network is not connected to the Internet.
Enable only the licensing system(s) you use.
By default, all the supported licensing systems are enabled.
Use the new (available from 2.13)
Preconfiguration::SelectLicensingModelsmethod to select exactly the licenses you want to enable and avoid issues arising from the usage of the other ones.
Samples¶
In the provided Python samples using both and Qt, a rare bug was reported causing failure at loading shared library due to negative interaction with the Qt library on some computers only.
The conditions necessary to reproduce this bug are currently unknown.
A workaround and an explanation of this bug is now provided in those Python / Qt samples.