c# ошибка в приложении

205
19 мая 2017, 12:43

При нажатии кнопки выходит ошибка:

Описание:
  Stopped working
Сигнатура проблемы:
  Имя события проблемы: CLR20r3
  Сигнатура проблемы 01:    cctalk.exe
  Сигнатура проблемы 02:    1.0.0.0
  Сигнатура проблемы 03:    591d5531
  Сигнатура проблемы 04:    CctalkLib
  Сигнатура проблемы 05:    1.0.0.0
  Сигнатура проблемы 06:    591d5530
  Сигнатура проблемы 07:    7b
  Сигнатура проблемы 08:    c7
  Сигнатура проблемы 09:    System.TimeoutException
  Версия ОС:    6.1.7601.2.1.0.320.65
  Код языка:    1049

При нажатии на кнопку:

public void StartPoll()
{
  if (_t != null)
    throw new InvalidOperationException("Stop polling first");
  lock (_timersSyncRoot)
  {
    if (!_rawDev.Connection.IsOpen())
      throw new InvalidOperationException("Init first");
    _t = new Timer(TimerTick, _rawDev, 50, PollPeriod);
  }
}

Далее

    void TimerTick(object state)
        {
            lock (_timersSyncRoot)
            {
                var buf = _rawDev.CmdReadEventBuffer();
                var newEventsCount = _lastEvent <= buf.Counter ? buf.Counter - _lastEvent : (255 - _lastEvent) + buf.Counter;
                _lastEvent = buf.Counter;
                if (newEventsCount != 0)
                {
                    for (int i = 0; i < Math.Min(newEventsCount, buf.Events.Length); i++)
                    {
                        var ev = buf.Events[i];
                        if (ev.IsError)
                        {
                            String errMsg;
                            var errCode = (CoinAcceptorErrors)ev.ErrorOrRouteCode;
                            _errors.TryGetValue(ev.ErrorOrRouteCode, out errMsg);
                            BeginInvokeErrorEvent(new CoinAcceptorErrorEventArgs(errCode, errMsg));
                        } else
                        {
                            CoinTypeInfo coinInfo;
                            _coins.TryGetValue(ev.CoinCode, out coinInfo);
                            var evVal = coinInfo == null ? 0 : coinInfo.Value;
                            var evName = coinInfo == null ? null : coinInfo.Name;
                            BeginInvokeCoinEvent(new CoinAcceptorCoinEventArgs(evName, evVal, ev.CoinCode, ev.ErrorOrRouteCode));
                        }
                    }
                    var eventsLost = newEventsCount - buf.Events.Length;
                    if (eventsLost > 0)
                    {
                        BeginInvokeErrorEvent(new CoinAcceptorErrorEventArgs(CoinAcceptorErrors.UnspecifiedAlarmCode,
                                                                             "Events lost:" + eventsLost));
                    }
                    _lastEvent = buf.Counter;
                }
                // TODO: signal unexpected device reset, when device`s event cointer go to 0
            }

        }
READ ALSO
Изменений содержимого окна по кнопкам

Изменений содержимого окна по кнопкам

ЗдравствуйтеНеобходимо разделить форму на 3 части

230
Как сделать ссылку на email рабочей (windows phone 8.1)?

Как сделать ссылку на email рабочей (windows phone 8.1)?

Я вывожу в TextBlock адрес электронной почтыКак сделать, чтобы при нажатии на него открывалось окно создания нового письма?

227
Как записать List в файл?

Как записать List в файл?

Есть информация, добавляется во время выполнения программы в лист, нужно записать этот лист в файл, и при каждом запуске программы, этот файл...

586