Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2005.08.07;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.04 c
1-1121941387
_Anton
2005-07-21 14:23
2005.08.07
Byte в OleVariant


3-1120136105
Developerr
2005-06-30 16:55
2005.08.07
ALTER TABLE FieldType Memo


4-1118150718
Юрий Ж.
2005-06-07 17:25
2005.08.07
Пульт ДУ + ИК-порт


3-1119874036
bigcrush
2005-06-27 16:07
2005.08.07
Запрос удаления повторяющихся данных на SQL


1-1121677758
Vasia
2005-07-18 13:09
2005.08.07
Печать картинки





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский