Changelog
All notable changes to the BradyPrintSdk project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[1.0.0] - 2026-05-20
Added
- New
PrinterSettingKeyvalues for querying supply dimensions and smart-supply status: PRINTER_SETTING_SUPPLY_WIDTH(Int) — supply width in thousandths of an inch; use withGetPrinterSettingInt.PRINTER_SETTING_SUPPLY_HEIGHT(Int) — supply height in thousandths of an inch; use withGetPrinterSettingInt.-
PRINTER_SETTING_SUPPLY_IS_SMART(Bool) — whether the loaded supply is a smart supply; use withGetPrinterSettingBool. -
New
PrinterSettingKeyvalue for querying RFID supply status: -
PRINTER_SETTING_SUPPLY_IS_RFID(Bool) — whether the currently loaded supply is RFID-enabled; use withGetPrinterSettingBool. Gated byPRINTER_FEATURE_RFID_ENCODING. -
New
JobSettingKeyvalues for print job configuration:JOB_SETTING_JOB_NAME,JOB_SETTING_NUMBER_OF_COPIES,JOB_SETTING_ROTATE_180,JOB_SETTING_COLLATE,JOB_SETTING_CUTTER_MODE,JOB_SETTING_CUT_AFTER_SET_LENGTH,JOB_SETTING_PERF_AFTER_SET_LENGTH. These keys can be used with the genericSetPrintJobSettingXxx/GetPrintJobSettingXxxfunctions. -
New
PerfCuttervalue in thePostPrintAccessoryenum for printers equipped with a perforated cutter accessory. -
New
CutterModevalues for perforated cutting:PerfCutEndOfJob,PerfCutAfterSet, andPerfAndFullCutAfterSet. These modes are only supported when thePerfCutterpost-print accessory is installed. -
New
GetSupportedCutterModesfunction that returns a bitmask ofCutterModevalues that are valid for the connected printer given its capabilities and the currently installed post-print accessory. Bit N in the output is set ifCutterModevalue N is valid. CallRefreshPrinterSettingsfirst to ensure the accessory state is current. -
New connection management functions:
IsPrinterConnected— checks whether a printer handle is currently connected.DisconnectPrinter— disconnects a connected printer while preserving active print jobs and stored connection parameters.-
ReconnectPrinter— reconnects a previously connected printer using its stored connection parameters from the last successfulConnectTcpPrinterorConnectUsbPrintercall. -
ConnectTcpPrinterandConnectUsbPrinternow returnBRADY_SDK_ERROR_EXISTING_CONNECTIONwhen called on a printer that is already connected. Callers must callDisconnectPrinterbefore establishing a new connection. -
DestroyPrinternow automatically disconnects the printer before freeing resources.
Removed
GetSupplyWidth— useGetPrinterSettingInt(PRINTER_SETTING_SUPPLY_WIDTH, ...)instead.GetSupplyHeight— useGetPrinterSettingInt(PRINTER_SETTING_SUPPLY_HEIGHT, ...)instead.GetIsSmartSupply— useGetPrinterSettingBool(PRINTER_SETTING_SUPPLY_IS_SMART, ...)instead.SetPrintJobName— useSetPrintJobSettingString(JOB_SETTING_JOB_NAME, ...)instead.SetNumberOfCopies— useSetPrintJobSettingInt(JOB_SETTING_NUMBER_OF_COPIES, ...)instead.SetRotate180— useSetPrintJobSettingBool(JOB_SETTING_ROTATE_180, ...)instead.SetCollate— useSetPrintJobSettingBool(JOB_SETTING_COLLATE, ...)instead.SetCutOptions— useSetPrintJobSettingEnum(JOB_SETTING_CUTTER_MODE, ...)andSetPrintJobSettingInt(JOB_SETTING_CUT_AFTER_SET_LENGTH, ...)instead.
Changed
- BREAKING: The NuGet package has been renamed from
BradyPrintSdktoBradyCorp.Desktop.SDK. Update your package references accordingly. - BREAKING (Header Layout): The public API has been split across multiple domain-specific headers behind a new umbrella header
BradyPrintSdk.h. Consumers should update their includes from#include "BradyPrintSdkLib.h"to#include "BradyPrintSdk.h". The legacyBradyPrintSdkLib.his retained as a deprecated redirect and will be removed in a future release. New headers: BradySdkStatus.h— status codes and log levels.BradyPrintSdkCore.h— handle types, SDK initialization, printer lifecycle, analytics.BradyPrintSdkConnection.h— TCP/IP and USB connection management.BradyPrintSdkSettings.h— printer features, printer settings, and job settings.BradyPrintSdkPrintJob.h— print job creation, page management, and submission.BradyPrintSdkRfid.h— RFID encoding operations.- BREAKING: Renamed
PRINTER_SETTING_IS_RFID_ENABLEDtoPRINTER_SETTING_IS_RFID_CAPABLE. The setting continues to report whether the connected printer has RFID encoder hardware installed. - BREAKING: Renamed
BRADY_SDK_ERROR_NOT_CONNECTEDtoBRADY_SDK_ERROR_NO_CONNECTION. The numeric value (-3) is unchanged. - BREAKING: Enforced strict C compliance in core library headers by removing unintentional C++ syntax.
- BREAKING (Native): Removed default arguments from the following functions. Consumers must now pass these arguments explicitly:
SetLogPathConnectTcpPrinter(previously defaulted to port9100)- BREAKING (API Signature): Converted C++ reference (
&) output parameters to standard C pointers (*) across the API to ensure standard C ABI compatibility. Affected functions: CheckFeatureSupportGetPrinterSettingInt,GetPrinterSettingEnum,GetPrinterSettingBoolCreatePrintJobGetPrintJobSettingInt,GetPrintJobSettingEnum,GetPrintJobSettingBool- Migration (C/C++): When calling these functions, callers must now explicitly pass the memory address using the address-of operator (e.g.,
&myVariableinstead ofmyVariable).