Поделиться через


IOCTL_NFP_DISABLE IOCTL (nfpdev.h)

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

Основной код

IRP_MJ_DEVICE_CONTROL

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

Никакой

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

Никакой

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

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, требования к драйверу)