POS для .net MSR DATA EVENT не запускается, когда я провожу карту - PullRequest
0 голосов
/ 11 октября 2011

Я занимаюсь разработкой приложения, которое будет считывать номер кредитной карты, не генерируя нажатия клавиш для того же самого в POS для .net.Я могу включить устройство, но когда я провожу карту, MSR_Dataevent не запускается.

РЕДАКТИРОВАТЬ: я сделал ниже код:

myMSR = myExplorer.CreateInstance(MsrDevice)
myMSR.Open()
myMSR.Claim(60000)
myMSR.AutoDisable = True
myMSR.DecodeData = True
myMSR.TransmitSentinels = False
myMSR.DataEventEnabled = True
myMSR.DeviceEnabled = True
RemoveHandler myMSR.DataEvent, AddressOf myMSR_DataEvent
AddHandler myMSR.DataEvent, AddressOf myMSR_DataEvent
AddHandler myMSR.ErrorEvent, AddressOf myMSR_ErrorEvent

Ответы [ 3 ]

0 голосов
/ 17 апреля 2012

В конце вашего обработчика событий myMSR_DataEvent установил

myMSR.DataEventEnabled = True

Я заметил, что при переходе через мою функцию DataEvent будет установлено значение false, и это помогло.

0 голосов
/ 14 февраля 2014

Привет, Джейнш, я работал над похожей проблемой и натолкнулся на эту запись, надеюсь, ты уже разобрался с ней, но у нас сработало, когда у нас была похожая проблема, было следующее (прошу прощения за то, что C # не VB.NET):

var deviceInfo = this.PosExplorer.GetDevice(DeviceType.Scanner, deviceLogicalName);
this.device = (Scanner)this.PosExplorer.CreateInstance(deviceInfo);
this.device.Open();
this.device.Claim(1000);
this.device.DeviceEnabled = true;
this.device.DataEventEnabled = true;
this.device.DecodeData = true;
this.device.DataEvent += this.DeviceScanEvent;
this.device.ErrorEvent += this.DeviceErrorEvent;

Конечно, MSR был правильно настроен (как сканер) в конфигурации объекта службы POS.NET для машины, и логическое имя, указанное для устройства, передается в этот код в переменной «deviceLogicalName» в коде. образец.

Мы приводим MSR к типу сервисного объекта Scanner POS.NET, и это сработало для нас, поскольку событие свипирования MSR - это просто «сканирование», что также позволило нам создать базовый базовый класс, который имел много общего функциональность для сканеров и MSR, используемых в нашем приложении.

Надеюсь, это поможет вам или даст следующему парню еще одну возможность попробовать!

0 голосов
/ 11 октября 2011

Убедитесь, что вы вызываете device.Open (), device.Claim (), а также задаете для свойства DataEventEnabled значение true.

        With Me.msrDevice
            .Open()
            .Claim(5000)

            .AutoDisable = True
            .DecodeData = True
            .TransmitSentinels = False
            .DataEventEnabled = True
            .DeviceEnabled = True

            AddHandler .DataEvent, AddressOf MSR_DataEvent
            AddHandler .ErrorEvent, AddressOf MSR_ErrorEvent
        End With
...