IOCTL_POINT_OF_SERVICE_CLAIM_DEVICE IOCTL (pointofservicedriverinterface.h)

Функция управления вводом-выводом запрашивает устройство для монопольного доступа.

Основной код

IRP_MJ_DEVICE_CONTROL

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

Не используется с этой операцией; задайте значение NULL.

Длина входного буфера

Не используется с этой операцией; установите значение 0 (ноль).

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

Не используется с этой операцией; задайте значение NULL.

Длина выходного буфера

Не используется с этой операцией; установите значение 0 (ноль).

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

В случае успешного выполнения возвращает значение TRUE ; В противном случае возвращает значение FALSE.

Комментарии

Дополнительные сведения об ошибке можно получить, вызвав GetLastError. В следующем списке показаны распространенные значения ошибок:

  • STATUS_ACCESS_DENIED: утверждение не может быть взято у текущего владельца утверждения.

  • STATUS_DEVICE_NOT_READY. Библиотека POS не инициализирована.

  • STATUS_PENDING: запрос на утверждение был поставлен в очередь.

Этот IOCTL обрабатывается библиотекой PosCx. Модуль записи драйверов не должен обрабатывать этот IOCTL. Вместо этого вызовите PosCxClaimDevice. Если устройство POS уже запрошено другим клиентом, драйвер pos-устройства отвечает за уведомление владельца утверждения с помощью события ReleaseDeviceRequested и ожидает, пока владелец утверждения сохранит свое утверждение в течение 50 миллисекунд. Если претензия не подтверждена, то претензия текущего владельца претензии автоматически отзывается и предоставляется вызывающему клиенту.

Требования

Требование Значение
Заголовок pointofservicedriverinterface.h (включая Pointofservicedriverinterface.h)