сканер штрихкодов

SV-SoftWareСоветыпопрограммированиюиподключениюкассовыхаппаратов исканеровштрих кодов кPC.Многиефирмыпродают дляразличныхкассовыхаппаратовсвоидрайвера,некоторыедрайвераидут вместе сприкладнойпрограммой -например в 1Сестьдрайвера нанекоторыемоделикассовыхаппаратов исканеровштрих кодов.Хотя многиепрограммистыпишут своипрограммы ивозникаютвопросы поповодупрограммногоиаппаратногоподключения.Попробуюответить нанекоторыевопросы ипривестинемного кодаиспользуемогодлянаписаниясофта.Прииспользованииприподключениичерез COM port естьособенностиегоиспользования.Распайкакабеля при 9-pinразьёме Com port's PCПримероткрытия Comпорта сканер штрихкодов обработкасобытий используя Win APIУправляющиекоды ипоследовательностикодов нанекоторыекассовыеаппараты.Чтоделать еслинетдокументациипоуправляющимкодам накассовыйаппарат.Подключениесканераштрих-кодов.Примерпрограммына кассовыйаппарат исканерштрих-кодов.Ссылки накомпонентыдляобработки ипечатиштрих-кодов.Обычно схемаподключения дана в паспорте аппарата.Приведенаясхема используется с ККМ Меркурий 111ФОткрытие сканер штрихкодов обработка Comпорта.....HANDLE hCom;OVERLAPPED o;BOOL fSuccess;DWORD dwEvtMask;hCom = CreateFile("COM1",GENERIC_READ | GENERIC_WRITE,0, /* exclusive access */NULL, /* no security attrs */OPEN_EXISTING,FILE_FLAG_OVERLAPPED,NULL);if (hCom == INVALID_HANDLE_VALUE) {/* Deal with the error. */}/* Set the event mask. */fSuccess = SetCommMask(hCom, EV_CTS | EV_DSR);if (!fSuccess) {/* deal with error */}/* Create an event object for use in WaitCommEvent. */o.hEvent = CreateEvent(NULL, /* no security attributes */FALSE, /* auto reset event */FALSE, /* not signaled */NULL /* no name */);assert(o.hEvent);if (WaitCommEvent(hCom, &dwEvtMask, &o)) {if (dwEvtMask & EV_DSR) {/** . . .*/}if (dwEvtMask & EV_CTS) {/** . . .*/}}The following example opens a handle to COM1 and fills in a DCB structure with the current configuration. The DCB structure is then modified and used to reconfigure the device. DCB dcb;HANDLE hCom;DWORD dwError;BOOL fSuccess;hCom = CreateFile("COM1",GENERIC_READ | GENERIC_WRITE,0, /* comm devices must be opened w/exclusive-access */NULL, /* no security attrs */OPEN_EXISTING, /* comm devices must use OPEN_EXISTING */0, /* not overlapped I/O */NULL /* hTemplate must be NULL for comm devices */);if (hCom == INVALID_HANDLE_VALUE) {dwError = GetLastError();/* handle error */}/** Omit the call to SetupComm to use the default queue sizes.* Get the current configuration.*/fSuccess = GetCommState(hCom, &dcb);if (!fSuccess) {/* Handle the error. *}/* Fill in the DCB: baud=9600, 8 data bits, no parity, 1 stop bit. */dcb.BaudRate = 9600;dcb.ByteSize = 8;dcb.Parity = NOPARITY;dcb.StopBits = ONESTOPBIT;fSuccess = SetCommState(hCom, &dcb);if (!fSuccess) {/* Handle the error. *}Following are the functions used with communications devices. BuildCommDCB BuildCommDCBAndTimeouts ClearCommBreakClearCommError CommConfigDialog DeviceIoControlEscapeCommFunction GetCommConfig GetCommMaskGetCommModemStatus GetCommProperties GetCommStateGetCommTimeouts GetDefaultCommConfig PurgeCommSetCommBreak SetCommConfig SetCommMaskSetCommState SetCommTimeouts SetDefaultCommConfigSetupComm TransmitCommChar WaitCommEvent Более подробно описано вHelp-е Win32 Programmer's Reference поставляемый вместе сCBuilder or Delphi. Лучше конечно написать Vxd сканер штрихкодов еёиспользовать. Примеры написания Vxd Выможете прочитать на дисках поставляемых сжурналом Компьютер пресс за прошлый год.Где в инете лежит не знаю. Можновоспользоваться сканер штрихкодов компонентами стороннихразработчиков, тем более что они в основном- бесплатны сканер штрихкодов поставляются с исходнымтекстом. Управляющиекодовые последовательности для кассовыхаппаратовМеркурийSamsungTest program forMercury 111FВнимание!Автор этойстатьи не несёт ответственности заточность предоставляемой информации поуправляющим кодам на кассовые аппараты! Выможете их использовать только на свой страхи риск!Чтоделать еслинетдокументациипоуправляющимкодам накассовыйаппарат.В этой ситуацииесть 3 метода решения проблемы: Первый исамый банальный сканер штрихкодов простой запроситьдокументацию у производителя сканер штрихкодов как правилони чего не получить! Второй сканер штрихкодов порой болеедостоверный в информации - это взятьтестовую программу которая поставляется саппаратом , загрузить монитор портов ипросмотреть все команды которымиобменивается аппарат с PC. Монитор портоввы можете скачать по этой ссылке portmon98.zip .Третий метод можно не описывать -разбираться в программе аппарата - долго ине у всех хватит квалификации.При подключенииаппарата к PC - обратите внимание на скоростьобмена Com порта, некоторые аппаратыиспользуют скорость 4800, другие 19200, дажеодна сканер штрихкодов тажа модель может использоватьразные скорости обмена - взависимости отверсии прошивки программы.Подключениесканераштрих-кодов.Подключение сканеравообще не представляет сложности иобработка его аналогична выше сказанному.Для CBuilder and Delphi есть компоненты freewareкоторыми вы можете воспользоваться .Примерпрограммына кассовыйаппарат исканерштрих-кодов.example.zipСсылки накомпонентыдляобработки ипечатиштрих-кодов.1.2. Автор этойстраницы будет благодарен если Вы можетеподелиться информацией на другие кассовыеаппараты !Страницапока еще не доконца сделана , так-чтосмотрите еёпозже!! Home26 Февраля 2002 @pochta.ru@front.ru@hotbox.ru@land.ru@pochtamt.ru@rbcmail.ru почтаразделы луковичный цвет электросчетчик сэт решетка окон помидор купля холодильник оптом золотник 264-27-00 золотник 264-27-00 ферромолибден колодец канализационный пластиковый морозильный ларь экстракт корень лопух сух. выделение кислорода залог кострома трехфазный электросчетчик кислород кадровый владимир вспучивающийся краска электрокамин dimplex model plasma (sp9) деловой костюм компания доминике стопный пластырь система дымоудаления организация видеоконференция машина r-600 рассылка адрес мужчина выходной маршрутизатор против рак бестраншейный облицовка сенсорный экран организация видеоконференция mastercard trinity hi-fi катетер витрина мороженый штукатурка фасадный ром доставка радиодоступ лекарство рак планирование день вино заказ длинный нард кислотостойкий краска ленинградский вокзал билет диспетчеризация нейминг мрт коленный сустав pki вспучивающийся краска доставка канцелярия tag heuer кружка этнический психология санфаянс регестрация пбоюл градирня вентиляторные грд kiev apartments service услуга кострома сканер штрихкодов