POS-терминал
Общие сведения о технологии драйвера pos-устройства.
Для разработки драйверов pos-устройств требуются следующие заголовки:
Руководство по программированию см. в разделе Точка обслуживания (POS).
Функции IOCTL
IOCTL_POINT_OF_SERVICE_CHECK_HEALTH Эта функция управления вводом-выводом проверяет работоспособности устройства. |
IOCTL_POINT_OF_SERVICE_CLAIM_DEVICE Функция управления вводом-выводом запрашивает у устройства монопольный доступ. |
IOCTL_POINT_OF_SERVICE_GET_DEVICE_BASICS Эта функция управления вводом-выводом получает тип устройства, версию и рекомендуемый размер буфера, указанный драйвером. |
IOCTL_POINT_OF_SERVICE_GET_PROPERTY Эта функция управления вводом-выводом возвращает значение указанного свойства из драйвера устройства. |
IOCTL_POINT_OF_SERVICE_MSR_AUTHENTICATE_DEVICE Эта функция управления вводом-выводом проверяет подлинность средства чтения магнитной полосы (MSR). |
IOCTL_POINT_OF_SERVICE_MSR_DEAUTHENTICATE_DEVICE Эта функция управления вводом-выводом отменяет проверку подлинности считывателя магнитных полос (MSR). |
IOCTL_POINT_OF_SERVICE_MSR_RETRIEVE_DEVICE_AUTHENTICATION Эта функция управления вводом-выводом извлекает тип проверки подлинности устройства. |
IOCTL_POINT_OF_SERVICE_MSR_UPDATE_KEY Эта функция управления вводом-выводом задает новый ключ шифрования. |
IOCTL_POINT_OF_SERVICE_RELEASE_DEVICE Эта функция управления вводом-выводом вызывается, когда клиент готов отказаться от своего утверждения на устройстве. |
IOCTL_POINT_OF_SERVICE_RESET_STATISTICS Эта функция управления вводом-выводом сбрасывает значение указанной статистики до нуля. |
IOCTL_POINT_OF_SERVICE_RETAIN_DEVICE Эта функция управления вводом-выводом используется для сохранения утверждения на устройстве, когда клиент получает уведомление о том, что его утверждение на устройстве оспаривается другим клиентом. |
IOCTL_POINT_OF_SERVICE_RETRIEVE_STATISTICS Эта функция управления вводом-выводом возвращает стандартную информацию о единой точке обслуживания (UPOS), например категорию, изготовитель и номер редакции встроенного ПО. |
IOCTL_POINT_OF_SERVICE_SET_PROPERTY Эта функция управления вводом-выводом задает указанное свойство на устройстве. |
IOCTL_POINT_OF_SERVICE_UPDATE_STATISTICS Эта функция управления вводом-выводом задает для указанной статистики значение во входном буфере. |
Перечисления
BarcodeStatus Это перечисление указывает значения состояния сканера штрихкодов. |
BarcodeSymbology Это перечисление определяет символы штрихкода. |
BarcodeSymbologyDecodeLengthType Перечисление BarcodeSymbologyDecodeLengthType описывает значения длины декодирования, которые можно задать для поддержки диапазона, двух дискретных значений или любой длины. |
DriverMagneticStripeReaderAuthenticationLevel Это перечисление определяет уровни поддержки проверки подлинности средства чтения с магнитной полосой (MSR). |
DriverUnifiedPosErrorReason Это перечисление указывает причину ошибки. |
DriverUnifiedPosErrorSeverity Это перечисление указывает серьезность ошибки. |
DriverUnifiedPosHealthCheckLevel Это перечисление указывает тип проверки работоспособности, выполняемой при вызове CheckHealthAsync на устройстве POS. |
DriverUnifiedPosPowerReportingType Это перечисление определяет тип отчетов о энергопотреблении, поддерживаемых устройством (например, расширенные, стандартные и т. д.). |
DriverUnifiedPosPowerState Это перечисление не реализовано. |
MsrAuthenticationProtocolType Это перечисление определяет протоколы проверки подлинности считывателя с магнитной полосой (MSR). |
MsrCardType Это перечисление определяет типы карт с магнитной полосой. |
MsrDataEncryption Это перечисление определяет тип алгоритма шифрования, поддерживаемый средством чтения магнитных полос (MSR). |
MsrErrorReportingType Это перечисление определяет константы, указывающие тип отчетов об ошибках для средства чтения магнитной полосы (MSR). |
MsrStatusUpdateType Это перечисление определяет константы, указывающие состояние считывателя магнитных полос (MSR). |
MsrTrackErrorType Это перечисление определяет типы ошибок отслеживания считывателя магнитных полос. |
MsrTrackIds Определяет константы, представляющие дорожки считывателя магнитных полос (MSR). |
MstStatisticsEntryType Это перечисление определяет типы статистики чтения с магнитной полосы. |
POS_CX_EVENT_ATTRIBUTES В POS_CX_EVENT_ATTRIBUTES описываются приоритет и права доступа для событий POS, поступающих с устройства. Значения представляют собой сочетание значений, определенных в POS_CX_EVENT_DEST и POS_CX_EVENT_PRIORITY. |
POS_CX_EVENT_DEST POS_CX_EVENT_DEST определяет, какие приложения получают это событие. |
POS_CX_EVENT_PRIORITY POS_CX_EVENT_PRIORITY определяет важность события и порядок его доставки в клиентское приложение. |
POSCXFUNCENUM Предоставляет список всех функций API PosCx WDF. |
PosDeviceControlType Это перечисление определяет значения для IOCTL драйвера сканера и драйвера считывателя магнитных полос (MSR). |
PosDeviceType Это перечисление определяет значения, используемые в структуре PosDeviceBasicsType для указания типа устройства (например, сканер штрихкодов или считыватель магнитных полос). |
PosEventType Это перечисление определяет значения, используемые в структуре PosEventDataHeader для указания типа создаваемого события. |
PosPropertyId Это перечисление определяет идентификаторы свойств для свойств, которые должны обрабатываться драйверами устройств, чтобы считаться сканером штрихкодов или считывателем магнитных полос (MSR). |
Функции
EVT_POS_CX_DEVICE_OWNERSHIP_CHANGE Обратный вызов EVT_POS_CX_DEVICE_OWNERSHIP_CHANGE вызывается во время перехода владения утверждением API. Драйвер должен вернуть устройство в состояние по умолчанию в этой подпрограмме. |
EVT_POS_CX_DEVICE_REMOTE_CLAIM Обратный вызов EVT_POS_CX_DEVICE_REMOTE_CLAIM вызывается при переходе устройства из невостребованного в запрошенный и позволяет драйверу выполнять дополнительную работу. |
EVT_POS_CX_DEVICE_REMOTE_RELEASE Обратный вызов EVT_POS_CX_DEVICE_REMOTE_RELEASE вызывается всякий раз, когда устройство освобождается и остается без владельца, что позволяет драйверу выполнять дополнительные действия. |
EVT_POS_CX_DEVICE_REMOTE_RETAIN Обратный вызов EVT_POS_CX_DEVICE_REMOTE_RETAIN вызывается всякий раз, когда PosCx пытается сохранить утверждение на сетевом устройстве и позволяет драйверу выполнять дополнительные действия. |
POS_CX_ATTRIBUTES_INIT POS_CX_ATTRIBUTES_INIT инициализирует структуру POS_CX_ATTRIBUTE. |
PosCxClaimDevice PosCxClaimDevice вызывается для утверждения устройства для монопольного использования. Вызывающий объект должен вызывать PosCxReleaseDevice, когда устройство больше не требуется. |
PosCxCleanPendingRequests PosCxCleanPendingRequests вызывается для отмены всех ожидающих запросов для данного вызывающего объекта, определенного открытым экземпляром. |
PosCxCleanupEvents PosCxCleanupEvents вызывается для очистки всех ожидающих событий для данного вызывающего объекта, определяемого открытым экземпляром. |
PosCxClose PosCxClose вызывается для удаления открытого экземпляра библиотеки PosCx. Эта функция освобождает устройство, если вызывающий объект является владельцем, и отменяет ожидающие запросы. Он должен вызываться из обратного вызова EVT_WDF_FILE_CLOSE драйвера. |
PosCxGetDeviceInterfaceTag PosCxGetDeviceInterfaceTag возвращает тег интерфейса устройства, заданный в PosCxOpen. |
PosCxGetPendingEvent PosCxGetPendingEvent вызывается из обратного вызова чтения устройства или при поступлении нового события. |
PosCxInit PosCxInit вызывается для инициализации внутренних ресурсов библиотеки PosCx. Ресурсы привязываются к устройству и освобождаются, когда устройство исчезает. |
PosCxIsDeviceOwner PosCxIsDeviceOwner проверяет, является ли вызывающий объект владельцем утверждения на устройстве. |
PosCxIsPosApp PosCxIsPosApp проверяет, связан ли открытый экземпляр с приложением точки обслуживания. |
PosCxMarkPosApp PosCxMarkPosApp помечает открытый экземпляр как связанный или не связанный с приложением точки обслуживания. |
PosCxOpen PosCxOpen вызывается для создания открытого экземпляра библиотеки PosCx. Эта функция инициализирует все ресурсы, необходимые для управления одним открытым экземпляром. Он должен вызываться из обратного вызова EVT_WDF_DEVICE_FILE_CREATE драйвера. |
PosCxPutPendingEvent PosCxPutPendingEvent создает новый объект события, копирует данные события в новый объект события и пытается делегировать их вызывающему объекту ожидания. |
PosCxPutPendingEventMemory PosCxPutPendingEventMemory пытается делегировать объект памяти, содержащий данные события, вызывающей объекту ожидания. |
PosCxReleaseDevice PosCxReleaseDevice вызывается для освобождения устройства, которое ранее было запрошено с помощью PosCxClaimDevice. После освобождения устройства повышается уровень следующего ожидающего инициатора запроса утверждений. |
PosCxRemoteRequestRelease PosCxRemoteRequestRelease вызывается всякий раз, когда удаленное устройство запрашивает освобождение устройства. Это инициирует согласование утверждений. |
PosCxRetainDevice PosCxRetainDevice вызывается для расширения прав владения устройством. |
Структуры
BarcodeSymbologyAttributesData Структура BarcodeSymbologyAttributesData содержит сведения об атрибутах для символов штрихкода. |
MSR_AUTHENTICATE_DEVICE Эта структура предоставляет сведения о проверке подлинности, используемые для проверки подлинности устройства. |
MSR_DATA_RECEIVED Эта структура содержит данные, считанные с карты с магнитной полосой. |
MSR_DEAUTHENTICATE_DEVICE Эта структура предоставляет сведения, необходимые для отмены проверки подлинности устройства. |
MSR_ERROR_EVENT Эта структура содержит данные об ошибках, передаваемые событию MagneticStripeReaderErrorOccured. |
MSR_RETRIEVE_DEVICE_AUTHENTICATION_DATA Эта структура содержит сведения о проверке подлинности, полученные с устройства. |
MSR_SUPPORTED_CARD_TYPES Эта структура определяет типы карт с магнитной полосой, поддерживаемые средством чтения. |
MSR_UPDATE_KEY Эта структура содержит сведения, необходимые для установки нового ключа шифрования. |
POS_CX_ATTRIBUTES Структура POS_CX_ATTRIBUTES содержит указатели на функции обратного вызова событий, реализованные драйвером клиента. |
PosBarcodeScanDataTypeData Эта структура описывает буфер символов штрихкода, поддерживаемых драйвером. |
PosBarcodeScannerCapabilitiesType Эта структура определяет тип возможностей сканера, поддерживаемых устройством, например, поддерживает ли устройство статистические отчеты и предварительный просмотр изображений. |
PosBarcodeScannerDataReceivedEventData Эта структура содержит отсканированные данные, передаваемые в событие BarcodeScannerDataReceived. |
PosBarcodeScannerErrorOccurredEventData Эта структура содержит данные об ошибках, передаваемые событию BarcodeScannerErrorOccurred. |
PosDeviceBasicsType Эта структура указывает тип устройства, версию и рекомендуемый размер буфера, указанный драйвером. |
PosDeviceInformation Эта структура предоставляет сведения об устройстве, определенные в и требуемые стандартом Единой точки обслуживания (UPOS). |
PosEventDataHeader Эта структура описывает отсканированные данные изображения, которые передаются в событие BarcodeScannerImagePreviewReceived. |
PosMagneticStripeReaderCapabilitiesType Эта структура определяет типы возможностей считывателя магнитных полос (MSR), поддерживаемые устройством, например, поддерживает ли устройство маскирование данных отслеживания. |
PosProfileType Эта структура описывает количество строк профиля в буфере. |
PosStatisticsHeader Эта структура определяет стандартную информацию о единой точке обслуживания (UPOS) об устройстве. Эта структура является заголовком для входящей статистики. |
PosStatusUpdatedEventData Эта структура содержит данные, передаваемые событию StatusUpdated. |
PosStringType Эта структура представляет строку юникода POS с длиной DataLengthInBytes. |
PosValueStatisticsEntry Эта структура содержит значение статистики. |