Есть ли способ создать работающие штрих-коды Code128 в TD 6.3? - PullRequest
0 голосов
/ 23 октября 2019

В настоящее время я работаю над проектом, который требует вывода штрих-кода Code128 в QRP. Это более старый проект, портированный с TD 4.1, ранее он использовал barcode.dll, который не работает должным образом с 6.3.

Поскольку я не мог найти DLL, которая бы работала, я решил попробовать и использоватьПроект Code128bWin из Sample Vault (https://samples.tdcommunity.net/index.php?dir=&file=Code128bWin.zip).). Проблема в том, что используемая там функция генерирует штрих-коды просто отлично, но они не сканируются, и я не могу понять, почему.

IЯ все еще довольно новичок в Team Developer, так что, возможно, проблема совершенно очевидна, и я просто не вижу ее, или, может быть, есть более простой способ создания штрих-кода, но я был озадачен этим уже несколько дней, иничего не получится.

Буду признателен за любую помощь.

1 Ответ

0 голосов
/ 24 октября 2019

Начинаем с очевидного - пробовали ли вы версию «barcode.dll» в формате UNICODE, поскольку TD6.3 основана на UNICODE, или, возможно, ваша существующая версия совместима с UNICODE, но «не работает должным образом», поскольку вы этого не сделалиизменил параметры строки TD и размеры буфера на UNICODE в ваших вызовах API.
например, String: LPSTR становится String: LPWSTR, а также имейте в виду SalSetBufferLength (20) до того, как вызов API выделит 20 байт памяти, но имейте в виду, что2 из этих байтов будут использоваться как нулевой терминатор. Поэтому, чтобы отправить / получить строку штрих-кода '* 4> HR \ fpzg', вам необходимо предоставить в буфер 22 байта памяти. Может быть, поэтому ваша существующая DLL не работает должным образом.

...