July 12, 2011
Revision History | |
---|---|
Revision 3.8.0 | July 12, 2011 |
Release Notes for Barcode DLL 3.8.0 | |
Revision 3.7.0 | January 29, 2010 |
Release Notes for Barcode DLL 3.7.0 | |
Revision 3.6.4 | April 27, 2009 |
Release Notes for Barcode DLL 3.6.4 | |
Revision 3.6.2 | February 17, 2009 |
Release Notes for Barcode DLL 3.6.2 | |
Revision 3.4.0 | January 2, 2009 |
Release Notes for Barcode DLL 3.4.0 | |
Revision 3.3.4 | July 30, 2008 |
Release Notes for Barcode DLL 3.3.4 | |
Revision 3.3 | October 30, 2006 |
Release Notes for Barcode DLL 3.3.0 | |
Revision 3.2 | June 2006 |
Release Notes for Barcode DLL 3.2 |
Table of Contents
This document is the release notes for Morovia Barcode DLL version 3.7. The following sections describe the release in detail and provide late-breaking or other information that supplements the main documentation. The version 3.7.0 is a maintenance release with one bug fix.
Barcode DLL shares the source code base with Barcode ActiveX product line. It keeps all functionalities of Barcode ActiveX while eliminating registry dependencies. This eliminates possible conflicts resulting from different versions of Barcode ActiveX components installed on the same computer.
To further reduce the conflicts, install the DLL into your own program folder instead of Windows system folder.
Version 3.8.0 fixes bug 737, an encoding defect on DataMatrix.
Version 3.7.0 fixes bug 664, an encoding defect on DataMatrix.
The Barcode DLL is designed to be used to develop custom barcode printing applications. It does not come with an installer. Simply copy all the files into your hard disk. To learn how to integrate the DLL with your VC++ or Classic VB programs, navigate to the samples folder. The barcode object includes several dozen properties and methods. To find out how they fit your program, see reference manual for details.
This release consists of the following items:
Release notes (this file)
Core component MrvBarDLL.dll
Import Library for Barcode DLL,
MrvBarDLL.lib
(for Visual C++ 6 and 7)
Barcode DLL Reference Manual
Visual Basic Module File MrvBarDll.bas
Samples - 1 for classic VB, 1 for MFC/C++ and 1 for .Net (written in C#)
License agreement
800 MHz Pentium processor
256 MB Memory
10MB Free disk space
Windows 2000, Windows XP or above
Both 3.8 and 3.7 are maintenance release - there was no feature added to the release. The release 3.8 addresses bug 737 and release 3.7 addresses bug 664 discovered after the last release:
Bug 664 - DataMatrix encoding: EDIFACT terminated input may not be correctly encoded in some ocassions. For example PTHEXSWITCH/R is decoded as PTHEXSWITCH/H.
Bug 737 - EDIFACT terminated input may not be correctly encoded in some occasions. When encoding the following three pieces of data under default settings (SizeID is auto), extra character { appears at the end when decoded. Samples: LMR-400-LLPL and RJFTVC6G.
Version 3.6.4 fixed a bug that could produce incorrect 10x10 data matrix barcodes.
Version 3.6.2 fixed a bug that crashes the program when Symbology is DataBar Expanded and one of GS1-128 field exceeds 40 characters.
Version 3.6.0 fixed a bug that creates invalid DataBar Expanded Stacked barcodes. It also solved a potential security vulnerability. See below for the more information on the two issues.
Bug 585 - incorect module placement for 10x10 matrix barcodes. Many scanners are able to pick this incorrect barcode, but some are not. Applicable on Barcode ActiveX Professional.
Bug 561 - Program crashes when encoding DataBar Expanded symbols and input field exceeds 40 characters. Fixed in 3.6.2.
Bug 564 - incorrect handling excessive data on variable-length GS1-128 fields. For example, AI 8110 allows max 70 digits. If the input is 71 digits, the previous code mistakenly removes the first 70 digits from the input. Fixed in version 3.6.2.
Bug 551 - Incorrect DataBar Expanded and DataBar Expanded
Stacked barcodes were produced on certain types of data. This bug happens on
some long data, for example,
(01)98898765432106(3202)012345(15)991231
.
Bug 552 - Method Save and ExportImage is able to overwrite arbitrary files in the system. Exploiting this issue allows an attacker to overwrite arbitrary files on an affected computer. The new implement makes sure that exiting files marked with read-only, system or hidden attributes, or with an extension not in the list will never be overwritten.
Support for GS1 DataBar family (DataBar, DataBar Truncated, DataBar Limited, DataBar Stacked, DataBar Stacked Omnidirectional, DataBar Expanded and DataBar Expanded Stacked) is added in this release. Note that DataBar Expanded and DataBar Expanded Stacked are available only in the professional version.
There are some changes in the new release either making the product more standard comformant, or removing ambiguity by deprecating certain properties. Changes include:
UCC/EAN-128 (also referred as GS1-128). The AI table is modified up to date as of Jan. 1, 2009. The validation code was also updated to reflect the change.
Previously, in order to make the human readable text conformant
to HIBC standard, property ShowcheckDigit
must be set to TRUE.
This behavior was changed in 3.4. The check digit will always appear in the
human readable line.
Property I2of5OptionalCheckDigit
is deprecated because
it confuses customers. Previously, a check digit is appended only when this
property is set to TRUE. However, Interleaved 2 of 5 requires that the input
length to be even. In 3.4, a check digit is appended when the input has an odd
length. The check digit will also appear in the human readable line regardless
the value of ShowCheckDigit
.
Bug fixes included in this release:
Bug 524 - Incorrect PDF417 barcodes were created when encoding
requires mode shift 913 (from Text mode to binary). A sample data is like
[)>~d03006~d029JKUSMAW0DA10$PSZPKK0XX~d029IV739GXL1794AB12PZ~d0299KAEUT~d0292LGOOSE
.
Bug 528 - Print and Print Preview in Microsoft Access do not work for 2D barcodes. Some portions of barcodes are truncated. Fixed in 3.4.0.
Bug 340 - LabelHeight and LabelWidth still report as English units even when Measurement is set to mbxMeasurementMetrics. Fixed in 3.4.0.
Bug 331 - check digit is not included in the human readable text in UCC/EAN-128. When UccEanOptionalCheckDigit is set to TRUE, the check digit is calculated by the program automatically. However, the check digit did not enter the human readable text. Fixed in 3.4.0.
Bug 528 - HIBC requires check digit appear in the human readable text
line. Currently property ShowcheckDigit
must set to TRUE to achieve this
behavior. Fixed in 3.4.0.
Bug 503 - UCC/EAN-128, When AI is 02 and the data entered is numeric,
the program reports an error. Fixed in version 3.3.4
.
Bug 423 - UCC/EAN-128, the program thinks that AI 37 requires
9-digit fixed-length data, and reports an error for any data with a different
length. Fixed in version 3.3.4
.
Bug 448 - When Symbology property is assigned to an identical value,
message
property is reset to the default. It is by design to have
message reset to default when changing the current barcode type. However, it
should change the message property when Symbology is accidentally set to
the same value. Fixed in 3.3.4.
Version 3.3.0 is a major upgrade from earlier versions. It added .Net examples, and fixed several bugs and adopted a new publishing system that is capable of producing manuals in web and print.
Bug 147 - Changing typeface of Font or
CommentFont produces no effects on the results.
Fixed in version 3.2.1
.
Bug 156 - Human readable disappears when Rotation
is set to mbxRTAntiClockwise_270
and
TexAlignment is mbxAlignRight
.
Fixed in version 3.2.1
.
Bug 162 - An error is reported from ExportImage method
when exporting BMP
images from the barcode object to an
IStream interface. This issue does not appear when the
barcode image is exported to other formats, or exported to a disk file. Fixed
in version 3.2.1
.
Bug 226 - POSTNET encoder creates barcodes as is when data with an invalid
length is specified. By USPS standard, a valid POSTNET barcode encodes either
5, 11 or 13 digits of a zip code. However, in version 3.2 it is possible to encode
a 10-digit number without any error reported. Fixed in version 3.3.0
.
Bug 236 - Invalid data matrix was created under certain circumstances. An
example is 4445601261263220QC0003900*GALBEL008*60/316*AQ8500017*
.
Fixed in version 3.3.0
.
Bug 259 - Incorrect human readable appears on 2-digit UPC/EAN extension barcode. The barcode is correct, however the human readable text always displays as 00 in the extension barcode.
Bug 269 - Data typos in the reference manual. In the table
Size of a pixel
, chapter Working with low-resolution
devices
, the pixel size in mm under 240 dpi should be
0.106
, instead of 0.160
in the manual.
Bug 278 - Random barcodes appear when generating bulk barcodes in a
memory-intensive environment. The issue was found in a .Net application which
prints multiple barcodes at a time. This error was caused by a memory assignment bug.
Fixed in version 3.3.0
.
Bug 280 - Memory leak was detected after barcode object was destroyed. This issue applies to Barcode DLL only. The type library associated with the object failed to release its memory after the object had been destroyed. Fixed in version 3.3.
Bug 285 - Barcode appeared small when a barcode object with Measurement
set to mbxMeasurementMetrics
is saved to a file and loaded back. The loading
process reduced all lengths in this scenario. Fixed in version 3.3.
Bug 296 - when Measurement is mbxMeasurementMetrics
,
setting AutoLabelSize creates a label area of 2 cm by 2 cm, not 2" by 2" as
indicated in the reference manual. Fixed in version 3.3.0
.