IOCTL_NFP_DISABLE IOCTL (nfpdev.h)

Клиент отправляет IOCTL_NFP_DISABLE запрос на временное отключение подписок, публикаций и событий присутствия. Это полезно, если клиент хочет отключить функцию близкого взаимодействия, но сохранить выделенные ресурсы, чтобы быстро повторно включить их при необходимости.

Основной код

IRP_MJ_DEVICE_CONTROL

Входной буфер

None

Выходной буфер

None

Блок состояния

Irp-IoStatus.Status> имеет значение STATUS_SUCCESS, если запрос выполнен успешно.

В противном случае — состояние соответствующего условия ошибки в виде кода NTSTATUS.

Дополнительные сведения см. в разделе Значения NTSTATUS.

Комментарии

Ниже приведены обязательные действия при использовании этого IOCTL:

  • При получении этого IOCTL драйвер ДОЛЖЕН пометить дескриптор файла как "Отключено".
  • Если дескриптор подписки изменяется на "Отключено", поставщик ДОЛЖЕН удалить все сообщения из очереди "Получено" этого дескриптора файла.
  • Если дескриптор подписки отключен:
    • Драйвер должен поддерживать очередь "Получено" этого дескриптора нулевой длины, очищая (удаляя) существующие сообщения в очереди и удалив новые сообщения из очереди сразу после их получения.
    • Драйвер ДОЛЖЕН выполнять все запросы IOCTL_NFP_GET_NEXT_SUBSCRIBED_MESSAGE в этом дескрипторове с помощью STATUS_CANCELLED.
  • Если дескриптор публикации отключен, поставщик НЕ ДОЛЖЕН передавать сообщение публикации и выполнять все запросы IOCTL_NFP_GET_NEXT_TRANSMITTED_MESSAGE в этом дескрипторове с помощью STATUS_CANCELLED

Требования

Требование Значение
Минимальная версия клиента Windows 8
Верхняя часть nfpdev.h

См. также раздел

IOCTL_NFP_ENABLE

Общее руководство по проектированию ближней связи (NFC)

Руководство по проектированию близкого взаимодействия с полями (касания и дела, модель поставщика NFP, требования к драйверу)