|
|
#1 |
|
Участник
|
Еще раз про сканеры штрих кодов
доброго дня
вопрос. есть терминал сбора данных CipherLab 8001. купили. нашёл dll с функциями для работы с ним. даже пример для аксапты есть. но. не работает. com порт открывает, но далее ничего. даже не проходит функция ping призванная определить, подключен ли ТСД к порту. стандартная программа считывания данных из него работает, т.е. дело не в неработающем порте. если у кого был опыт подключнеия/использования ТСД в аксапте, поделитесь. спасибо. |
|
|
|
|
#2 |
|
MCTS
|
Вот только недавно подключал ККМ. Покажи код
|
|
|
|
|
#3 |
|
сибиряк
|
X++: Boolean getDataFromScaner()
{
boolean error;
DLL dll = new DLL('stdCipherLab');
DLLFunction func;
boolean ret;
int res;
real rr;
int a;
Binary b;// = new Binary(res);
str st1, st2, st3, st4, st5, st6, st7, st8, errSt;
Binary struct1 = new Binary(4),
struct2 = new Binary(4),
struct3 = new Binary(4),
struct4 = new Binary(4),
struct5 = new Binary(4),
struct6 = new Binary(4),
struct7 = new Binary(4),
struct8 = new Binary(4),
err = new Binary(4);
boolean currentState;
ASCIIIO file;
;
if (AA_TradeSetup::find(winapi::getComputerName()))
{
file = new ASCIIIO("c:\\scanerData.txt", "W");
file.write("");
func = new DLLFunction(dll, 'stdCheckComm');
func.arg();
func.call();
/*
func = new DLLFunction(dll, 'stdCloseComm');
func.arg();
res = func.call();
*/
func = new DLLFunction(dll, 'stdOpenComm');
func.returns(ExtTypes::DWord);
func.arg(ExtTypes::DWord, ExtTypes::DWord, ExtTypes::DWord);//, ExtTypes::DWord);
res = func.call(AA_TradeSetup::find(winapi::getComputerName()).TSDPort, AA_TradeSetup::find(winapi::getComputerName()).TSDSpeed, 1);
if (res)
{
func = new DLLFunction(dll, 'stdGetCurrentState');
func.returns(ExtTypes::DWord);
func.arg();//
currentState = func.call();
if (currentState)
{
func = new DLLFunction(dll, 'stdGetDataCount');
func.returns(ExtTypes::DWord);
func.arg(ExtTypes::DWord);
rr = func.call(0);
if (rr)
{
func = new DLLFunction(dll, 'stdDocToFile');
func.returns(ExtTypes::DWord);
func.arg(ExtTypes::DWord, ExtTypes::String);
res = func.call(0,'c:\\scanerData.txt');
func = new DLLFunction(dll, 'stdGetDataCount');
func.returns(ExtTypes::DWord);
func.arg(ExtTypes::DWord);
rr = func.call(0);
if (rr)
{
func = new DLLFunction(dll, 'stdClearDoc');
func.returns(ExtTypes::DWord);
func.arg(ExtTypes::DWord);
res = func.call(0);
}
func = new DLLFunction(dll, 'stdCloseComm');
func.returns(ExtTypes::DWord);
func.arg();
res = func.call();
dll.finalize();
} // if rr
else
{
func = new DLLFunction(dll, 'stdCloseComm');
func.returns(ExtTypes::DWord);
func.arg();
res = func.call();
dll.finalize();
}
}
else
{
Info(strfmt('%1',
(currentState ? "Готов к работе" : "Не в режиме главного меню")));
// slava return false; // Alex, 09/02-06 -->
}
}
else
{
Info(strfmt('%1',
"Не могу открыть порт"));
// slava return false; // Alex, 09/02-06 -->
}
}
return true;
}
__________________
С уважением, Вячеслав. |
|
|
|
|
#4 |
|
MCTS
|
не совсем понятно зачем используете DLL. Можно ведь через COM объекты. На какую почту высылали класс?
|
|
|
|
|
#5 |
|
Злыдни
|
|
|
|
|
|
#6 |
|
сибиряк
|
Цитата:
__________________
С уважением, Вячеслав. |
|
|
|
|
#7 |
|
MCTS
|
а проверяли что возвращают каждые new DLLFunction(dll, 'stdOpenComm');
Узнайте где результат не вернется |
|
|
|
|
#8 |
|
MCTS
|
какой программой получали описания функций в библиотеке?
|
|
|
|
|
#9 |
|
сибиряк
|
Цитата:
Не работает, почему-то, у автора темы. Был текстовый файл с описанием вызовов, скачивал с сайта производителя.
__________________
С уважением, Вячеслав. |
|
|
|
|
#10 |
|
MCTS
|
на производителя бы не надеялся...
Вот например пользуюсь для этой цели Dependency Walker
|
|
|
|
|
#11 |
|
сибиряк
|
Да нет, кстати. Вроде нареканий не было. Кстати, спасибо George Nordic за своевременную подсказку, когда были проблемы с терминалом
__________________
С уважением, Вячеслав. |
|
|
|
|
#12 |
|
Участник
|
Дико извиняюсь, но каким образом он может дать описиние функций и список их параметров?
__________________
Axapta v.3.0 sp5 kr2 |
|
|
|
|
#13 |
|
MCTS
|
Дико прощаю
, но про параметры вроде ничего не говорил, или у меня склероз?
|
|
|
|
|
#14 |
|
Участник
|
Или вы под описанием функций имеете в виду что-то другое?
__________________
Axapta v.3.0 sp5 kr2 |
|
|
|
|
#15 |
|
MCTS
|
все доступные функции
|
|
|
|
|
Похожие темы
|
||||
| Тема | Ответов | |||
| «Обрезание» длинных штрих-кодов | 7 | |||
| Подвисает сканер штрих-кодов | 0 | |||
| AX 4.0 + сканеры штрих кодов | 11 | |||
| Нужен совет по сканеру штрих-кодов | 5 | |||
| Еще раз о подключении сканнера штрих кодов | 43 | |||
|