Skip to content

ZkFingerAgent 3.1

Latest

Choose a tag to compare

@imomzoda-dev imomzoda-dev released this 06 Aug 10:49

Исправление главной проблемы 3.0: программа показывала «Готов» на сканере, которого нет в USB, и ждала палец десять секунд впустую.

Что исправлено

  • Сканер определяется по-настоящему. Наличие устройства теперь берётся у Windows через cfgmgr32, а не у ZKFPM_GetDeviceCount: SDK составляет список устройств при инициализации и на вынутом сканере продолжает отвечать «устройство на месте». Отсюда и брались «Готов» на пустом USB и код −8 вместо −13.
  • Мгновенная реакция на подключение и отключение. Добавлена подписка на события устройств (RegisterDeviceNotification): без неё DBT_DEVICEARRIVAL для USB-устройств окнам не приходит вообще — Windows рассылает его только для дисков и флешек. Плюс независимый сторож: раз в секунду сверяется слепок шины USB, опрос стоит меньше миллисекунды.
  • Переоткрытие устройства при возврате в USB. Вставили сканер обратно — программа сама закрывает старый дескриптор, заново инициализирует SDK и открывает устройство. Перезапуск не нужен.
  • Отключение во время сканирования замечается за 0,4 секунды: захват прерывается с внятным «сканер отключён», а не висит до конца таймаута.
  • /api/fingerprint/scan отвечает 503 сразу, если сканера нет в USB. Раньше страница честно ждала весь таймаут и получала «палец не приложен».

Что нового

  • Полное удаление программы. Кнопка в Настройках → Защита стирает exe, скрытый agent.config.json, копию в C:\ProgramData\ZkFingerAgent и запись автозапуска — на компьютере не остаётся ничего. Драйвер сканера и ZKFinger SDK не трогаются: их ставил отдельный установщик и они нужны другим программам.
  • Если exe удалили снаружи, пока программа работала, она замечает это и убирает свои данные сама.
  • Ключ командной строки --uninstall для того же самого без интерфейса.

Установка

Скачайте ZkFingerAgent.exe ниже и запустите. При первом запуске программа предложит поставить драйвер и SDK — установщик встроен внутрь.

Проверено на ZK4500 (USB\VID_1B55&PID_0840), ZKFinger SDK 5.3.0.33, Windows 10/11.