Автор Тема: Z-2 USB MF метод ЧитатьMifareC (ReadMifareC)  (Прочитано 8212 раз)

Dk

  • Пользователь
  • *****
  • Сообщений: 7
Z-2 USB MF метод ЧитатьMifareC (ReadMifareC)
« : 12 Октября 2018, 19:20 »
Добрый день!

Имеется в наличии:
1. Считыватель Z-2 USB MF
2. 1С:Предприятие 8.3 (8.3.10.2561)
3. Драйвер для работы с оборудованием из 1С версии 1.5.2 (файл - ZR1C_1.5.2.zip)

Использую метод ЧитатьMifareC (ReadMifareC) и получаю следующую ситуацию:
Если явный ключ авторизации (седьмой параметр, передаваемый в метод) меньше определенного числа в десятичном выражении (например, 1 миллион) - чтение данные происходит без проблем, но если ключ авторизации в десятичном выражении больше определенного числа (например, 1 миллиард) - получаю ошибку: "Неправильный тип параметра."

С методом WriteMifareC / ПисатьMifareC ситуация аналогичная.

Такое ощущение, что тип параметра "Явный ключ авторизации" не "UI8", а "UI4", либо перед использованием методов необходимо каким-то определенным образом настроить считыватель.

Можете помочь с этой проблемой?

gsa

  • Пользователь
  • *****
  • Сообщений: 265
Re: Z-2 USB MF метод ЧитатьMifareC (ReadMifareC)
« Ответ #1 : 12 Октября 2018, 20:29 »
Добрый день
Обновление https://yadi.sk/d/vxB6L4I13P5JXp. 1c не поддерживает 64-битные числа, поэтому изменил тип параметра "Явный ключ авторизации" на PWSTR
Компонента.ReadMifareC(DevId, 0, 0, blob, 4, 0, "0xFFFFFFFFFFFF", false);

Dk

  • Пользователь
  • *****
  • Сообщений: 7
Re: Z-2 USB MF метод ЧитатьMifareC (ReadMifareC)
« Ответ #2 : 18 Октября 2018, 17:20 »
Теперь другая проблема: при авторизации по явному ключу Б получаю ошибку "Ошибка авторизации ключа.". Авторизация по ключу А проходит.
На версии 1.5.2.1 проходит авторизация по обоим ключам

gsa

  • Пользователь
  • *****
  • Сообщений: 265
Re: Z-2 USB MF метод ЧитатьMifareC (ReadMifareC)
« Ответ #3 : 18 Октября 2018, 17:34 »
На версии 1.5.2.1 проходит авторизация по обоим ключам
В версии 1.5.2.1 неправильно работал параметр "ключ Б" методов ReadMifareC, WriteMifareC, всегда авторизация была по ключу А. В версии 1.5.3 эта ошибка исправлена.
Авторизовать сектор по ключу Б можно, когда в биты доступа для прицепа установлены в конфигурацию, в которой ключ Б не может быть прочитан (см. справку ZR1C_RUS.chm -> Ключи -> Mifare Classic 1K -> Работа с памятью).

Dk

  • Пользователь
  • *****
  • Сообщений: 7
Re: Z-2 USB MF метод ЧитатьMifareC (ReadMifareC)
« Ответ #4 : 18 Октября 2018, 17:55 »
Читаю сектор 6 (на приложенном рисунке). Биты установлены так, что "Чтение Б - никогда"
Читаю демо-программой из SDK Readers - читается и ключом А и ключом Б
Читаю драйвером 1С (точнее - ConfigZR1C.exe) - ключом А читается, ключом Б - нет

gsa

  • Пользователь
  • *****
  • Сообщений: 265
Re: Z-2 USB MF метод ЧитатьMifareC (ReadMifareC)
« Ответ #5 : 18 Октября 2018, 18:27 »
Читаю драйвером 1С (точнее - ConfigZR1C.exe) - ключом А читается, ключом Б - нет
Проверил чтение сектора карты Mifare 4K Classic с авторизацией по ключу B (биты доступа как были на скриншоте) с помощью ConfigZR1C.exe - авторизуется и читает правильно (ключ А = "0xAB9078563412", ключ Б = "0xFFFFFFFFFFFF"), как и Demo Sdk Readers.
Проверьте порядок параметров метода ReadMifareC в ConfigZR1C.exe:
#0: COM?
#1: 6
#2: 0
#3: пусто (EMPTY)
#4: 4
#5: 0
#6: "0xFFFFFFFFFFFF"
#7: 1
#8: 0
#9: -1
#10: пусто (EMPTY)

Проверьте правильный ли ключ Б, в Demo байты ключа отображаются слева направо (от младшего к старшему), в ConfigZR1C - справа налево, т.е. например значение ключа в Demo = 12.34.56.78.90.AB, а ConfigZR1C = "0xAB9078563412".

Метод GetLastError в ConfigZR1C.exe возвращает "Ошибка авторизации ключа"?

Dk

  • Пользователь
  • *****
  • Сообщений: 7
Re: Z-2 USB MF метод ЧитатьMifareC (ReadMifareC)
« Ответ #6 : 18 Октября 2018, 18:34 »
Цитировать
Demo байты ключа отображаются слева направо (от младшего к старшему), в ConfigZR1C - справа налево, т.е. например значение ключа в Demo = 12.34.56.78.90.AB, а ConfigZR1C = "0xAB9078563412"
Вот это поворот! (с)
Теперь чтение через ConfigZR1C заработало. Буду мучить 1С. Спасибо!

Dk

  • Пользователь
  • *****
  • Сообщений: 7
Re: Z-2 USB MF метод ЧитатьMifareC (ReadMifareC)
« Ответ #7 : 26 Июня 2019, 19:09 »
Вопрос в продолжении темы:
Чтение/запись из 1С работает без проблем, но появилась необходимость оповещать пользователя об окончании записи (звуковой или цветовой индикацией)
В SDK Readers такая возможность есть (по кнопке "Индикаторы"), а в обновленном (ver. 1.6.2) драйвере 1С?

gsa

  • Пользователь
  • *****
  • Сообщений: 265
Re: Z-2 USB MF метод ЧитатьMifareC (ReadMifareC)
« Ответ #8 : 27 Июня 2019, 15:02 »
Чтение/запись из 1С работает без проблем, но появилась необходимость оповещать пользователя об окончании записи (звуковой или цветовой индикацией)
В SDK Readers такая возможность есть (по кнопке "Индикаторы"), а в обновленном (ver. 1.6.2) драйвере 1С?
В драйвере 1С нет такой возможности. Постараюсь добавить в ближайшее время и сообщу здесь.

Dk

  • Пользователь
  • *****
  • Сообщений: 7
Re: Z-2 USB MF метод ЧитатьMifareC (ReadMifareC)
« Ответ #9 : 27 Июня 2019, 15:13 »
Спасибо! Будем ждать

gsa

  • Пользователь
  • *****
  • Сообщений: 265
Re: Z-2 USB MF метод ЧитатьMifareC (ReadMifareC)
« Ответ #10 : 28 Июня 2019, 11:46 »
Спасибо! Будем ждать
Обновление ZR1C v1.7.1 https://yadi.sk/d/vxB6L4I13P5JXp
Добавлен метод "Signal / Сигнализировать" для Z-2 USB MF, Matrix III Net, CP-Z2-MF (описание в ZR1C_RUS.chm).

Dk

  • Пользователь
  • *****
  • Сообщений: 7
Re: Z-2 USB MF метод ЧитатьMifareC (ReadMifareC)
« Ответ #11 : 28 Июня 2019, 15:22 »
Все отлично! Спасибо!!

godman

  • Пользователь
  • *****
  • Сообщений: 2
Re: Z-2 USB MF метод ЧитатьMifareC (ReadMifareC)
« Ответ #12 : 09 Ноября 2019, 01:03 »
Добавлен метод "Signal / Сигнализировать" для Z-2 USB MF, Matrix III Net, CP-Z2-MF (описание в ZR1C_RUS.chm).

Упс... А в Z-2 USB (мод. RD_ALL) не работает? Никак не реагирует ни на какие варианты параметров ((((
« Последнее редактирование: 09 Ноября 2019, 01:05 от godman »

gsa

  • Пользователь
  • *****
  • Сообщений: 265
Re: Z-2 USB MF метод ЧитатьMifareC (ReadMifareC)
« Ответ #13 : 09 Ноября 2019, 06:43 »
Добавлен метод "Signal / Сигнализировать" для Z-2 USB MF, Matrix III Net, CP-Z2-MF (описание в ZR1C_RUS.chm).
Упс... А в Z-2 USB (мод. RD_ALL) не работает? Никак не реагирует ни на какие варианты параметров ((((
С Z-2 Rd-All не работает.