Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.08.07;
Скачать: CL | DM;

Вниз

Считыватель штрихкода   Найти похожие ветки 

 
kyn66 ©   (2005-07-06 11:44) [0]

Есть-ли какой софт, чтобы получать данные со считывателя штрихкода. Дали разбираться с ним, подключил, на штрихкоде пикает.... а что дальше, как узнать чего он там ссчитал


 
DiamondShark ©   (2005-07-06 11:54) [1]

Интерфейс какой?


 
Ilya39 ©   (2005-07-06 11:54) [2]

Интерфейс какой у считывателя?


 
sniknik ©   (2005-07-06 11:54) [3]

пикает...и ничего не происходит, значит он у тебя com-вский, скорее всего
это поможет
http://www.sbarcode.com/soft/comkey/comkey.html


 
cosinus ©   (2005-07-06 11:57) [4]

Попробуй открыть любой текстовый редактор (например notepad), установить в него курсор и считать штрих-код. Некоторые, насколько я знаю, так делают...


 
kyn66 ©   (2005-07-06 12:19) [5]

Подключен в гнездо клавиатуры


 
DiamondShark ©   (2005-07-06 12:29) [6]


> Подключен в гнездо клавиатуры

Значит и считывать так, как будто с клавиатуры.

А вообще-то, желательно мануал к сканеру почитать. Там, обычно, написано, что он шлёт, и кой-какие настройки, например, какие скан-коды посылать -- обычные, или цифрового поля, какой ограничитель использовать, и т.п.


 
kyn66 ©   (2005-07-06 12:44) [7]

Действительно, в любое активное окно передает цифры кода, а что дальше с ними делать? 8-), ладно пусть начальство думает. Проверил - работает.


 
Digitman ©   (2005-07-06 13:36) [8]


> что дальше с ними делать?


тут же делать соотв.запрос к "базе данных")
а зачем еще сканер нужен ?


 
Shurrrraaa   (2005-07-06 20:24) [9]

где то в инете есть DLL-ка с примером как использовать barcode сканер в своих прогах.
В код проги включаешь небольшие описания и программно его подключаешь. Далее в проге достаточно отлавливать сообщения посылаемые DLL-кой и обрабатывать считанный штрихкод на свое усмотрение.
Сам пользовался таким способом год назад пришлось писать проги на делфе без дополнительных экзешников типа COMKEY.
Работает быстро и просто. Главное не забывать освобождать данных порт сканера для возможного использования другими прогами.


 
Shurrrraaa   (2005-07-06 20:25) [10]

Если до выходных доживешь - может найду исходники


 
kyn66 ©   (2005-07-12 15:23) [11]

>> Shurrrraaa
ВЫходные прошли, как с исходником?


 
ЯВ   (2005-07-12 15:29) [12]

кто-то другой не дожил :)
или забыл или запил или забил....


 
shurrraaa   (2005-07-17 17:33) [13]

А саму DLL-ку не знаю куда выложить.
Под 98виндой работало а на хп нету сканера чтобы потестить.
Код обработчика на форме.

unit Unit1;
interface
uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;
const
 wm_setbar = wm_user + 1;
 sCom1: pchar = "COM1";
 sCom2: pchar = "COM2";
 sCom3: pchar = "COM3";
 sCom4: pchar = "COM4";
 cOk = 0;         // успешно
 cError = 1;      // общая ошибка
 cEr_In = 2;      // неправ. входн. парам. ф-ии
 cEr_STXETX = 3;  // неправильное начало cSTXETX
 cEr_XONXOFF = 4; // неправильное начало cXONXOFF
 cEr_Term = 5;    // неправильный терминатор
 cEr_Win = 6;     // не установлено окно для сообщений
 cEr_Bs = 7;      // поток уже стартовал
type
 tTerminator = (cUni,cCR, cNONE, cLF, cSPACE, cCRLF, cTAB, cESC, cCTRLC, cSTXETX, cXONXOFF, cEOT);
 TForm1 = class(TForm)
   Edit1: TEdit;
   Label1: TLabel;
   procedure FormCreate(Sender: TObject);
   procedure FormShow(Sender: TObject);
   procedure FormHide(Sender: TObject);
   procedure FormClose(Sender: TObject; var Action: TCloseAction);
 private
   { Private declarations }
 public
   { Public declarations }
   procedure WMSetBar(var Msg: TMessage); message WM_SetBar;

 end;

var
 Form1: TForm1;

function PORTOK: integer; stdcall; external "barcode.dll";
function INITOK: integer; stdcall; external "barcode.dll";
function SETCOMPORT(port, baud: integer): integer;stdcall;external "barcode.dll";
function CLOSECOMPORT: integer; stdcall; external "barcode.dll";
function SETTERM(tt: integer): integer; stdcall; external "barcode.dll";
function SETMES(w: HWND; m: UINT): integer; stdcall; external "barcode.dll";
function STARTBAR: integer; stdcall; external "barcode.dll";
function ENDBAR: integer; stdcall; external "barcode.dll";

implementation

{$R *.dfm}

procedure TForm1.WMSetBar(var Msg: TMessage);
var
s:string;
begin
 if msg.wparam=0 then
   begin
     //А ВОТ ЗДЕСЬ ПОЛУЧАЕШЬ СЧИТАННЫЙ ШТРИХКОД И ДЕЛАЕШЬ С НИМ ЧТО ХОЧЕШЬ
     s:=format("%s",[pchar(msg.lparam)]);
     edit1.Text :=s;
   end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 if INITOK<>cOk then showmessage("Ошибка инициализации библиотеки.");
 SetComPort(1, 9600);        //настройки для сканера номер_порта, боде_рате
 SetMes(Form1.handle, wm_setbar);
 SetTerm(5);
end;

procedure TForm1.FormShow(Sender: TObject);
begin
 StartBar;
end;

procedure TForm1.FormHide(Sender: TObject);
begin
 EndBar;
end;

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

end.



Страницы: 1 вся ветка

Текущий архив: 2005.08.07;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.053 c
3-1120268257
Киря
2005-07-02 05:37
2005.08.07
Попогите написать запрос


14-1121262155
lookin
2005-07-13 17:42
2005.08.07
У кого есть свой сайт со своими фотоматериалами?


3-1120212326
Apachi
2005-07-01 14:05
2005.08.07
EXEC в хранимых процедурах, как им пользоватся


4-1118044252
ChPuK
2005-06-06 11:50
2005.08.07
перезапуск


3-1119858325
_Max
2005-06-27 11:45
2005.08.07
Организация БД