Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.05.2012, 13:22   #11
=master=
Форумчанин
 
Регистрация: 26.03.2012
Сообщений: 665
По умолчанию

Цитата:
Ошибаюсь чтоли ??
Все зависит от типа штрих-кода, вот например есть такой - Code128, и он не единственный.
=master= вне форума Ответить с цитированием
Старый 03.05.2012, 13:33   #12
PsihoBolt
Пользователь
 
Регистрация: 03.05.2012
Сообщений: 23
По умолчанию

Цитата:
Сообщение от WorldMaster Посмотреть сообщение
Проверяйте настройки сканера. Книжка должна быть с настроечными штрихкодами. Может там будет особая настройка с заголовочным символом.

Скрытий это типа перевода каретки, табуляции и подобные.
Вот и в этом и фишка, что я не знаю какой будет в будущем сканер, сегодня один завтра другой, и каждый настраивать возможности не будет, просто мне кажется если он работает в разрез, то возможно когда срабатывает событие, и если подумать что сканер подает на вход не по одному символу, целую очередь, а значит скорость ввода отличается от скорости ввода человека, но как узнать скорость не понятно... я в общем ищу способ обойти частные случаи и попытаться сделать один общий !
PsihoBolt вне форума Ответить с цитированием
Старый 03.05.2012, 13:50   #13
=master=
Форумчанин
 
Регистрация: 26.03.2012
Сообщений: 665
По умолчанию

Так а что с хуком не получилось?
=master= вне форума Ответить с цитированием
Старый 03.05.2012, 13:55   #14
PsihoBolt
Пользователь
 
Регистрация: 03.05.2012
Сообщений: 23
По умолчанию

Цитата:
Сообщение от =master= Посмотреть сообщение
Так а что с хуком не получилось?
Честно, ничего не получилось! Он никак не реагировал, причем я не знаю, толи я неправильно написал, толи он реально не реагирует. Вообщем, признаюсь честно, я не знаю как написать такой хук!
Точнее я написал который реагирует на ввод символа, но применить флаг LLKHF_INJECTED не получилось

Последний раз редактировалось PsihoBolt; 03.05.2012 в 13:57. Причина: дописал
PsihoBolt вне форума Ответить с цитированием
Старый 03.05.2012, 13:59   #15
=master=
Форумчанин
 
Регистрация: 26.03.2012
Сообщений: 665
По умолчанию

Так в поиск запустите, примеров этого хука вагон и телега.
А в сообщении есть еще и время, между нажатиями разницу определите.
=master= вне форума Ответить с цитированием
Старый 03.05.2012, 14:14   #16
PsihoBolt
Пользователь
 
Регистрация: 03.05.2012
Сообщений: 23
По умолчанию

Цитата:
Сообщение от =master= Посмотреть сообщение
Так в поиск запустите, примеров этого хука вагон и телега.
А в сообщении есть еще и время, между нажатиями разницу определите.
Это я тоже пытался, но например, не смог найти начало ввода штриха. Обьясняю-по идее должен быть буфер который пишет все символы, которые вводятся, естественно проверяется время между вводами, и есть конец, это энтер, вот это и есть искомый штрих код, но как узнать где начало кода не понятно. Постоянно долбить разницу во времени? Это тоже не очень экономично с точки зрения оптимизации, да если пройдет системный затуп, код не корректно считается и т.д. это конечно вариант но не очень правильный. Я ша конечно попробую, но не уверен что то хорошее получиться!
PsihoBolt вне форума Ответить с цитированием
Старый 03.05.2012, 14:20   #17
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

что там увас за мистический такой сканер? Вот у меня под рукой сканер Datalogic он дает заголовком символ ";"
Неужели у вас чтото особенное.
И вообще настройка сканера для системы это нормально. У меня была как то система где можно было самостоятельно указать тип заголовка.
Каким методом вы вообще получаете данные?? покажите код.
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Старый 03.05.2012, 14:33   #18
PsihoBolt
Пользователь
 
Регистрация: 03.05.2012
Сообщений: 23
По умолчанию

Цитата:
Сообщение от WorldMaster Посмотреть сообщение
что там увас за мистический такой сканер? Вот у меня под рукой сканер Datalogic он дает заголовком символ ";"
Неужели у вас чтото особенное.
И вообще настройка сканера для системы это нормально. У меня была как то система где можно было самостоятельно указать тип заголовка.
Каким методом вы вообще получаете данные?? покажите код.
Может я не знаю, что за такая "настройка сканера", поясните пожалуйста!
Вот что пока получилось! Ну по дебагу оно работает

Код:
const WH_KEYBOARD_LL = 13; LLKHF_INJECTED = $00000010;

type tagKBDLLHOOKSTRUCT = packed record vkCode : DWord; scanCode : DWord; flags : DWord; time : DWord; dwExtraInfo : PDWord; end; TKBDLLHOOKSTRUCT = tagKBDLLHOOKSTRUCT; PKBDLLHOOKSTRUCT = ^TKBDLLHOOKSTRUCT;

type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); private { Private declarations } function LowLevelKeyboardProc(nCode:Integer; awParam:WParam; alParam: LParam) : DWORD; stdcall; public { Public declarations } end;

var Form1: TForm1; hhk : HHOOK;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject); begin

hhk:=SetWindowsHookEx(WH_KEYBOARD_LL, @LowLevelKeyboardProc, HInstance, 0); end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin UnhookWindowsHookEx(hhk); end;

function TForm1.LowLevelKeyboardProc(nCode: Integer; awParam: WParam; alParam: LParam): DWORD; var fEatKeystroke: boolean; p : PKBDLLHOOKSTRUCT; buf : array[0..255] of Char; sc: UINT; begin fEatKeystroke:= false; if (nCode = HC_ACTION) then case (awParam) of WM_KEYDOWN, WM_KEYUP: begin p:= PKBDLLHOOKSTRUCT(alParam); fEatKeystroke := (p.flags = LLKHF_INJECTED); end; end; if fEatKeystroke then Result := 1 else Result := CallNextHookEx(0, nCode, awParam, alParam); end

Последний раз редактировалось PsihoBolt; 03.05.2012 в 14:37.
PsihoBolt вне форума Ответить с цитированием
Старый 03.05.2012, 14:39   #19
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Это вы так в стройчку всегда пишете??
А сканер какой?
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Старый 03.05.2012, 14:45   #20
PsihoBolt
Пользователь
 
Регистрация: 03.05.2012
Сообщений: 23
По умолчанию

Цитата:
Сообщение от WorldMaster Посмотреть сообщение
Это вы так в стройчку всегда пишете??
А сканер какой?
Нет, просто я сейчас с телефона, другого способа выхода в интернет нет, прошу прощения за неудобства! сканер metrologic
PsihoBolt вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
генерация штрих кода Oksa22 Помощь студентам 4 08.03.2010 14:27
как ввести в таблицу информацию со штрих-кода Aigulka Помощь студентам 1 27.02.2009 17:39
Работа со сканером Terran Софт 3 06.01.2009 13:58
Ibm Anyplace Kiosk и его сканер штрих-кода Rs232 California Компьютерное железо 2 06.07.2008 18:41