Sample source code below will display you how to manage a complex task like get barcode to memory buffer with barcode sdk in C++. ByteScout Barcode Suite is the set that includes three different SDK products to generate barcodes, read barcodes and read and write spreadsheets: Barcode SDK, Barcode Reader SDK and Spreadsheet SDK. It can be applied to get barcode to memory buffer with barcode sdk using C++.
The following code snippet for ByteScout Barcode Suite works best when you need to quickly get barcode to memory buffer with barcode sdk in your C++ application. IF you want to implement the functionality, just copy and paste this code for C++ below into your code editor with your app, compile and run your application. Further improvement of the code will make it more robust.
Trial version of ByteScout Barcode Suite is available for free. Source code samples are included to help you with your C++ app.
On-demand (REST Web API) version:
Web API (on-demand version)
On-premise offline SDK for Windows:
60 Day Free Trial (on-premise)
#include "stdafx.h" #include <atlsafe.h> // For ATL::CComSafeArray #import "Bytescout.BarCode.tlb" raw_interfaces_only using namespace Bytescout_BarCode; int _tmain(int argc, _TCHAR* argv[]) { // Initialize COM. HRESULT hr = CoInitialize(NULL); // Create the interface pointer. IBarcodePtr pIBarcode(__uuidof(Barcode)); // set the registration name and key BSTR regname = ::SysAllocString(L"DEMO"); pIBarcode->put_RegistrationName(regname); ::SysFreeString(regname); BSTR regkey = ::SysAllocString(L"DEMO"); pIBarcode->put_RegistrationKey(regkey); ::SysFreeString(regkey); // Set barcode type (symbology) pIBarcode->put_Symbology(SymbologyType_Code128); // Set barcode value BSTR value = ::SysAllocString(L"Abc123"); pIBarcode->put_Value(value); ::SysFreeString(value); // Get barcode image bytes. SAFEARRAY* pSafeArray; pIBarcode->GetImageBytesPNG(&pSafeArray); // Convert SAFEARRAY to byte array CComSafeArray<BYTE> safeArray; safeArray.Attach(pSafeArray); UINT count = safeArray.GetCount(); BYTE* bytes = new BYTE[count]; for (ULONG i = 0; i < count; i++) bytes[i] = safeArray.GetAt(i); // Check result by saving image bytes to file FILE* pFile; fopen_s(&pFile, "result.png", "wb"); fwrite(bytes, 1, count, pFile); fclose(pFile); delete[] bytes; pIBarcode->Release(); // Uninitialize COM. CoUninitialize(); return 0; }
60 Day Free Trial or Visit ByteScout Barcode Suite Home Page
Explore ByteScout Barcode Suite Documentation
Explore Samples
Sign Up for ByteScout Barcode Suite Online Training
Get Your API Key
Explore Web API Docs
Explore Web API Samples
// stdafx.cpp : source file that includes just the standard includes // BarcodeGenerationExample.pch will be the pre-compiled header // stdafx.obj will contain the pre-compiled type information #include "stdafx.h" // TODO: reference any additional headers you need in STDAFX.H // and not in this file
60 Day Free Trial or Visit ByteScout Barcode Suite Home Page
Explore ByteScout Barcode Suite Documentation
Explore Samples
Sign Up for ByteScout Barcode Suite Online Training
Get Your API Key
Explore Web API Docs
Explore Web API Samples
// stdafx.h : include file for standard system include files, // or project specific include files that are used frequently, but // are changed infrequently // #pragma once #include "targetver.h" #include <stdio.h> #include <tchar.h> // TODO: reference additional headers your program requires here
60 Day Free Trial or Visit ByteScout Barcode Suite Home Page
Explore ByteScout Barcode Suite Documentation
Explore Samples
Sign Up for ByteScout Barcode Suite Online Training
Get Your API Key
Explore Web API Docs
Explore Web API Samples
#pragma once // Including SDKDDKVer.h defines the highest available Windows platform. // If you wish to build your application for a previous Windows platform, include WinSDKVer.h and // set the _WIN32_WINNT macro to the platform you wish to support before including SDKDDKVer.h. #include <SDKDDKVer.h>
60 Day Free Trial or Visit ByteScout Barcode Suite Home Page
Explore ByteScout Barcode Suite Documentation
Explore Samples
Sign Up for ByteScout Barcode Suite Online Training
Get Your API Key
Explore Web API Docs
Explore Web API Samples
60 Day Free Trial or Visit ByteScout Barcode Suite Home Page
Explore ByteScout Barcode Suite Documentation
Explore Samples
Sign Up for ByteScout Barcode Suite Online Training
Get Your API Key
Explore Web API Docs
Explore Web API Samples
also available as: