Имя: Пароль:
IT
 
Как из DrvFR1C напечатать штрих код?
0 Галахад
 
гуру
21.03.14
12:58
Пробую напечатать через DeviceControlHEX, но не получается.

Для примера пробую распечатать штрих-код:
   2000000192444
Перевел его в шестнадцатеричное число:
   1D1A94D0FBC

Пробую выполнить код, в результате штрих-код не печатается.
Код такой:

РезультатКоманды = "";
КомандаКВыполнению = "C2" +
                     " 10" +
                     " 1D 1A 94 D0 FB C0";
КомандаВыполнена = Объект.Драйвер.DeviceControlHEX(Объект.ИДУстройства, КомандаКВыполнению, РезультатКоманды);


Что я делаю не правильно?
1 Галахад
 
гуру
21.03.14
13:31
Немного подкорректировал. Но все равно не работает.
И самое печальное "РезультатКоманды" пустой. Непонятно где косяк.

    РезультатКоманды = "";
    КомандаКВыполнению =     "C2" +
                            " 10 00 00 00" +
                            //" 1D 1A 94 D0 FB C0";
                            " 1D 1A 94 D0 FB C0";
    КомандаВыполнена = Объект.Драйвер.DeviceControlHEX(Объект.ИДУстройства, КомандаКВыполнению, РезультатКоманды);
    
    Сообщить("КомандаВыполнена - "+КомандаВыполнена);
    Сообщить("РезультатКоманды - "+РезультатКоманды);
2 Галахад
 
гуру
21.03.14
13:53
Получилось вобщем. Оказывается не нужно было посылать контрольный символ.
И байты передом назад поменять.
Исходный штрих-код:
2000988614846
Отсекаем контрольный символ:
200098861484
Переводим в шестнадцатеричное
2E96D251AC
Меняем порядок:
AC 51 D2 96 2E

Рабочий код:

    РезультатКоманды = "";
    КомандаКВыполнению =     "C2" +
                            " 1E 00 00 00" +
                            
                            " AC 51 D2 96 2E";
    КомандаВыполнена = Объект.Драйвер.DeviceControlHEX(Объект.ИДУстройства, КомандаКВыполнению, РезультатКоманды);
    
    Сообщить("КомандаВыполнена - "+КомандаВыполнена);
    Сообщить("РезультатКоманды - "+РезультатКоманды);