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

Pour imprimer le code-barres Data Matrix dans une application Visual C++, vous avez besoin de la police de caractères TrueType Barcodesoft bcsdatamatrix.ttf et du fichier cruflbcs.dll.

Si vous téléchargez et installez la version de démonstration du logiciel Data Matrix de Barcodesoft sur votre ordinateur, vous trouverez le fichier crUFLBCS.dll dans le dossier
"C:\Program Files (x86)\Common Files\Barcodesoft\Fontutil\".

Si vous ne trouvez pas le fichier cruflbcs.dll sur votre ordinateur, veuillez le télécharger à partir de DataMatrix Barcode VC++ .

crUFLBCS.dll est un objet COM doté de l'interface IDataMatrix.
Vous trouverez des informations détaillées sur l'interface IDataMatrix dans le fichier readme.html.

Pour appeler les méthodes de l'interface IDataMatrix à partir de VC++, vous pouvez utiliser soit la liaison tardive (Late Binding), soit la liaison précoce (Early Binding).

La liaison tardive est utilisée lorsque les informations de type d'un objet ne sont pas disponibles au moment de la compilation.

La liaison précoce exige que le client ait accès à la bibliothèque de types avant la compilation.


Liaison tardive (Late Binding)



Vos codes utilisant la liaison tardive pour générer le code-barres Data Matrix s'exécutent plus lentement que si vous utilisez la liaison précoce.

Cependant, vos codes sont indépendants de la version tant que l'interface COM et les paramètres des méthodes restent inchangés.
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();



Liaison précoce (Early Binding)



Vos codes utilisant la liaison précoce pour créer le code-barres Data Matrix s'exécutent plus rapidement que si vous utilisez la liaison tardive.

1. Importez la bibliothèque de types. N'oubliez pas d'appeler
CoInitialize() avant d'utiliser l'interface COM.

2. Si vous souhaitez utiliser la macro T2OLE pour convertir un LPTSTR en LPOLESTR, vous devez d'abord appeler la macro USES_CONVERSION.

3. Vous pouvez appeler soit la méthode Encode, soit la méthode EncodeCR pour encoder le data matrix avec des options.
#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

Utiliser MFC pour générer la classe wrapper



Si vous utilisez VC++ 6 pour créer le code-barres Data Matrix , appuyez sur Ctrl + W pour lancer l'Assistant de classe (Class Wizard). Cliquez ensuite sur le bouton "Ajouter une classe" (Add Class), puis choisissez "À partir d'une bibliothèque de types" (From a type library).
Choisissez crUFLBCS.dll, puis sélectionnez l'interface IDataMatrix à laquelle vous souhaitez ajouter des wrappers, puis cliquez sur OK.

Si vous utilisez Visual Studio 2003 ou une version ultérieure pour générer le code-barres Data Matrix ,
1. Dans le menu Projet, sélectionnez Ajouter une classe (Add Class).
2. Sélectionnez Classe MFC à partir d'une bibliothèque de types (MFC Class from Typelib) dans la liste des modèles.
3. Pour Ajouter une classe à partir de (Add Class from), sélectionnez Registre (Registry).
4. Dans la liste des bibliothèques de types disponibles, recherchez crUFLBCS.
5. Dans la liste des interfaces de cette bibliothèque de types, sélectionnez toutes les classes pour lesquelles vous souhaitez ajouter des wrappers.
6. Cliquez sur Terminer (Finish).

N'oubliez pas d'appeler OleInitialize(NULL) avant d'utiliser le fragment de code suivant.
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