support
data matrix barcode data matrix barcode Visual C++
data matrix barcode
Price: US$129

Para imprimir el código de barras Data Matrix en una aplicación de Visual C++, necesita la fuente true type Barcodesoft bcsdatamatrix.ttf y el archivo cruflbcs.dll.

Si descarga e instala la versión de demostración del software Data Matrix de Barcodesoft en su computadora, encontrará el archivo crUFLBCS.dll en la carpeta
"C:\Program Files (x86)\Common Files\Barcodesoft\Fontutil\".

Si no encuentra el archivo cruflbcs.dll en su computadora, descárguelo desde DataMatrix Barcode VC++ .

crUFLBCS.dll es un objeto COM con la interfaz IDataMatrix.
Puede encontrar información detallada sobre la interfaz IDataMatrix en el archivo readme.html.

Para llamar a los métodos de la interfaz IDataMatrix desde VC++, puede utilizar vinculación tardía (Late Binding) o vinculación temprana (Early Binding).

La vinculación tardía se utiliza cuando la información de tipo de un objeto no está disponible en el momento de la compilación.

La vinculación temprana requiere que el cliente tenga acceso a la biblioteca de tipos antes de la compilación.


Vinculación tardía (Late Binding)



Sus códigos que utilizan la vinculación tardía para generar el código de barras Data Matrix se ejecutarán más lento que si utiliza la vinculación temprana.

Sin embargo, sus códigos serán independientes de la versión, siempre y cuando la interfaz COM y los parámetros del método permanezcan sin cambios.
CoInitialize(NULL);
CLSID clsid;
if (FAILED(::CLSIDFromProgID(L"cruflbcs.DataMatrix.1", &clsid)))
return 0;
IDispatch* pIDispatch = NULL;
if (FAILED(::CoCreateInstance(clsid, NULL, CLSCTX_INPROC_SERVER, IID_IDispatch, (void**)&pIDispatch)))
return 0;
LPOLESTR szNameEncode = L"Encode";
DISPID dispid_encode;
HRESULT hr = pIDispatch->GetIDsOfNames(IID_NULL, &szNameEncode, 1, LOCALE_SYSTEM_DEFAULT, &dispid_encode);
CComBSTR bstrResult;
VARIANTARG v[1];
v[0].vt = VT_BSTR; v[0].bstrVal = SysAllocString(L"Barcodesoft Sample");
DISPPARAMS dispParams = { v, NULL, 1, 0 };
VARIANT vResult;
hr = pIDispatch->Invoke( dispid_encode, IID_NULL, GetUserDefaultLCID(), DISPATCH_METHOD,
&dispParams, &vResult, NULL, NULL);
if (FAILED(hr))
return 0;
pIDispatch->Release();
CoUninitialize();



Vinculación temprana (Early Binding)



Sus códigos que utilizan la vinculación temprana para crear el código de barras Data Matrix se ejecutarán más rápido que si utiliza la vinculación tardía.

1. Importe la biblioteca de tipos. No olvide llamar a
CoInitialize() antes de utilizar la interfaz COM.

2. Si desea utilizar la macro T2OLE para convertir LPTSTR en LPOLESTR, primero debe llamar a la macro USES_CONVERSION.

3. Puede llamar al método Encode o al método EncodeCR para codificar data matrix con opciones.
#include <atlbase.h>
#include <atlconv.h>

#import "cruflbcs.dll"
using namespace cruflBCS;

USES_CONVERSION;
CoInitialize(NULL);
_bstr_t bstrOutput;
char pszToEncode[] = "Barcodesoft Sample";
try
{
cruflBCS::IDataMatrixPtr pBCSDataMatrix(__uuidof(CBCSDataMatrix));
bstrOutput = pBCSDataMatrix->Encode(T2OLE(pszToEncode));
}
catch (const _com_error& e)
{
_tprintf(_T("Error: 0x%08x %s\n"), e.Error(), e.ErrorMessage());
}
CoUninitialize();


MFC Wrapper Class Data Matrix

Utilizar MFC para generar la clase contenedora (Wrapper Class)



Si utiliza VC++ 6 para crear el código de barras Data Matrix , presione Ctrl + W para iniciar el Asistente para clases (Class Wizard). Después, haga clic en el botón "Agregar clase" (Add Class) y elija "Desde una biblioteca de tipos" (From a type library).
Elija crUFLBCS.dll, luego seleccione la interfaz IDataMatrix a la que desea agregar contenedores y haga clic en Aceptar (OK).

Si utiliza Visual Studio 2003 o superior para generar el código de barras Data Matrix ,
1. En el menú Proyecto, seleccione Agregar clase (Add Class).
2. Seleccione Clase MFC desde biblioteca de tipos (MFC Class from Typelib) de la lista de plantillas.
3. En Agregar clase desde (Add Class from), seleccione Registro (Registry).
4. En la lista de bibliotecas de tipos disponibles, busque crUFLBCS.
5. De la lista de interfaces en esa biblioteca de tipos, seleccione todas las clases para las que desee agregar contenedores.
6. Haga clic en Finalizar (Finish).

Por favor, no olvide llamar a OleInitialize(NULL) antes de utilizar el siguiente fragmento de código.
CString strOutput;
IDataMatrix *pDataMatrixObj = new IDataMatrix();
if ( pDataMatrixObj->CreateDispatch("cruflbcs.DataMatrix.1")
strOutput = pDataMatrixObj->Encode("Barcodesoft Sample");


Fore more information about Data Matrix, please click data matrix.
Barcodesoft Phone Support
+1-866-500-1818

Barcodesoft eMail eMail
Technical Support