Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Клиент, заинтересованный в получении уведомлений о передаче сообщения, отправит запрос IOCTL_NFP_GET_NEXT_TRANSMITTED_MESSAGE водителю близкого взаимодействия.
Основной код
Входной буфер
Никакой
Выходной буфер
Никакой
Блок состояния
Irp->IoStatus.Status имеет значение STATUS_SUCCESS, если запрос выполнен успешно.
В противном случае состояние соответствующего условия ошибки в виде кода NTSTATUS.
Дополнительные сведения см. в значения NTSTATUS.
Замечания
- Клиентское приложение отправит этот IOCTL в цикл управления в дескриптор публикации. Две отдельные передачи одного сообщения приводят к активации двух событий.
- Клиент должен отправлять другой IOCTL каждый раз, когда будет выполнена закаченная. Драйвер должен использовать соответствующие блокировки, чтобы гарантировать, что количество успешных завершения этого IOCTL соответствует количеству передачи публикации.
-
При использовании этого IOCTL требуются следующие действия:
- Если этот IOCTL получен на дескрипторе, который ранее не прошел IOCTL_NFP_SET_PAYLOAD, драйвер ДОЛЖЕН завершить его с STATUS_INVALID_DEVICE_STATE.
- Драйвер должен поддерживать эквивалент счетчика CompleteEventImmediately (ULONG или больше) в дескрипторе файла публикации.
-
При получении этого IOCTL в драйвере:
- Если счетчик равен нулю, драйвер ДОЛЖЕН запустить IOCTL для последующего завершения.
- Если счетчик больше нуля, драйвер ДОЛЖЕН отреаментить счетчик по одному и завершить IOCTL с STATUS_SUCCESS немедленно.
- Если публикация передается, и в настоящее время IOCTL не задается, драйвер ДОЛЖЕН увеличить счетчик "CompleteEventImmediately" по одному.
- Если публикация передается при наличии доступного IOCTL, драйвер должен завершить записанный IRP с STATUS_SUCCESS и НЕ увеличить счетчик "CompleteEventImmediately".
- Если IOCTL содержит входной или выходной буфер, драйвер ДОЛЖЕН завершить IOCTL с STATUS_INVALID_PARAMETER.
- Если этот IOCTL получен, а другой в настоящее время задается в дескриптор публикации, второй (или более поздней) должен быть завершен с STATUS_INVALID_DEVICE_STATE.
- Драйвер ДОЛЖЕН поддерживать CancelIo закаченного IOCTL.
Требования
| Требование | Ценность |
|---|---|
| минимальные поддерживаемые клиентские | Windows 8 |
| заголовка | nfpdev.h |
См. также
общее руководство по проектированию по взаимодействию с полями (NFC)