Point of Service (POS)
Übersicht über die Point-of-Service-Gerätetreibertechnologie (POS).
Zum Entwickeln von Pos-Gerätetreibern (Point of Service) benötigen Sie die folgenden Header:
Den Programmierleitfaden finden Sie unter Point of Service (POS).
IOCTLs
IOCTL_POINT_OF_SERVICE_CHECK_HEALTH Diese E/A-Steuerungsfunktion überprüft die Geräteintegrität. |
IOCTL_POINT_OF_SERVICE_CLAIM_DEVICE Die E/A-Steuerungsfunktion beansprucht das Gerät für exklusiven Zugriff. |
IOCTL_POINT_OF_SERVICE_GET_DEVICE_BASICS Diese E/A-Steuerungsfunktion ruft den Typ des Geräts, die Version und die empfohlene Puffergröße ab, wie vom Treiber angegeben. |
IOCTL_POINT_OF_SERVICE_GET_PROPERTY Diese E/A-Steuerungsfunktion gibt den Wert der angegebenen Eigenschaft vom Gerätetreiber zurück. |
IOCTL_POINT_OF_SERVICE_MSR_AUTHENTICATE_DEVICE Diese E/A-Steuerungsfunktion authentifiziert den Magnetstreifenleser (Magnetic Stripe Reader, MSR). |
IOCTL_POINT_OF_SERVICE_MSR_DEAUTHENTICATE_DEVICE Diese E/A-Steuerungsfunktion entauthentifiziert den Magnetstreifenleser (MSR). |
IOCTL_POINT_OF_SERVICE_MSR_RETRIEVE_DEVICE_AUTHENTICATION Diese E/A-Steuerungsfunktion ruft den Geräteauthentifizierungstyp ab. |
IOCTL_POINT_OF_SERVICE_MSR_UPDATE_KEY Diese E/A-Steuerungsfunktion legt einen neuen Verschlüsselungsschlüssel fest. |
IOCTL_POINT_OF_SERVICE_RELEASE_DEVICE Diese E/A-Steuerungsfunktion wird aufgerufen, wenn ein Client bereit ist, seinen Anspruch auf ein Gerät aufzugeben. |
IOCTL_POINT_OF_SERVICE_RESET_STATISTICS Diese E/A-Steuerungsfunktion setzt den Wert der angegebenen Statistik auf Null zurück. |
IOCTL_POINT_OF_SERVICE_RETAIN_DEVICE Diese E/A-Steuerungsfunktion wird verwendet, um einen Anspruch auf einem Gerät beizubehalten, wenn ein Client benachrichtigt wird, dass sein Anspruch auf dem Gerät von einem anderen Client angefochten wird. |
IOCTL_POINT_OF_SERVICE_RETRIEVE_STATISTICS Diese E/A-Steuerungsfunktion gibt STANDARDinformationen zu einem Gerät zurück, z. B. Kategorie, Hersteller und Firmwarerevisionsnummer. |
IOCTL_POINT_OF_SERVICE_SET_PROPERTY Diese E/A-Steuerungsfunktion legt die angegebene Eigenschaft auf dem Gerät fest. |
IOCTL_POINT_OF_SERVICE_UPDATE_STATISTICS Diese E/A-Steuerungsfunktion legt die angegebene Statistik auf den Wert im Eingabepuffer fest. |
Enumerationen
BarcodeStatus Diese Enumeration gibt die Statuswerte des Barcodescanners an. |
BarcodeSymbologie Diese Enumeration definiert die Barcodesymbologien. |
BarcodeSymbologyDecodeLengthType Die BarcodeSymbologyDecodeLengthType-Enumeration beschreibt Werte für die Decodierungslänge, die so festgelegt werden kann, dass ein Bereich, zwei diskrete Werte oder eine beliebige Länge unterstützt werden. |
DriverMagneticStripeReaderAuthenticationLevel Diese Enumeration definiert die Ebenen der MsR-Authentifizierung (Magnetic Stripe Reader). |
DriverUnifiedPosErrorReason Diese Enumeration gibt den Grund für den Fehler an. |
DriverUnifiedPosErrorSeverity Diese Enumeration gibt den Schweregrad des Fehlers an. |
DriverUnifiedPosHealthCheckLevel Diese Enumeration gibt den Typ der Integritätsprüfung an, die durchgeführt werden soll, wenn CheckHealthAsync auf einem POS-Gerät aufgerufen wird. |
DriverUnifiedPosPowerReportingType Diese Enumeration definiert den Typ der Energieberichterstattung, die vom Gerät unterstützt wird (z. B. advanced, standard usw.). |
DriverUnifiedPosPowerState Diese Enumeration ist nicht implementiert. |
MsrAuthenticationProtocolType Diese Enumeration definiert MSR-Authentifizierungsprotokolle (Magnetic Stripe Reader). |
MsrCardType Diese Enumeration definiert die Arten von Magnetstreifenkarten. |
MsrDataEncryption Diese Enumeration definiert die Art des Verschlüsselungsalgorithmus, der vom Magnetstreifenleser (Magnetic Stripe Reader, MSR) unterstützt wird. |
MsrErrorReportingType Diese Enumeration definiert die Konstanten, die den Fehlerberichtstyp für den Magnetstreifenleser (Magnetic Stripe Reader, MSR) angeben. |
MsrStatusUpdateType Diese Enumeration definiert die Konstanten, die den Status des Magnetstreifenlesers (Magnetic Stripe Reader, MSR) angeben. |
MsrTrackErrorType Diese Enumeration definiert die Arten von Magnetstreifenlese-Nachverfolgungsfehlern. |
MsrTrackIds Definiert die Konstanten, die die MsR-Spuren (Magnetic Stripe Reader) darstellen. |
MstStatisticsEntryType Diese Enumeration definiert die Arten von Magnetstreifenleserstatistiken. |
POS_CX_EVENT_ATTRIBUTES Der POS_CX_EVENT_ATTRIBUTES beschreibt die Priorität und die Zugriffsrechte für die POS-Ereignisse, die vom Gerät stammen. Die Werte sind eine Kombination der in POS_CX_EVENT_DEST und POS_CX_EVENT_PRIORITY definierten Werte. |
POS_CX_EVENT_DEST Die POS_CX_EVENT_DEST definiert, welche Anwendungen dieses Ereignis empfangen. |
POS_CX_EVENT_PRIORITY Der POS_CX_EVENT_PRIORITY definiert die Wichtigkeit des Ereignisses und die Reihenfolge, in der es an die Clientanwendung übermittelt wird. |
POSCXFUNCENUM Stellt eine Liste aller PosCx-WDF-API-Funktionen bereit. |
PosDeviceControlType Diese Enumeration definiert Werte für die IOCTLs des Scannertreibers und des MSR-Treibers (Magnetic Stripe Reader). |
PosDeviceType Diese Enumeration definiert Werte, die in der PosDeviceBasicsType-Struktur verwendet werden, um den Gerätetyp anzugeben (z. B. Barcodescanner oder Magnetstreifenleser). |
PosEventType Diese Enumeration definiert Werte, die in der PosEventDataHeader-Struktur verwendet werden, um den Typ des ausgelösten Ereignisses anzugeben. |
PosPropertyId Diese Enumeration definiert die Eigenschaftenbezeichner für die Eigenschaften, die Gerätetreiber verarbeiten müssen, um als Barcodescanner oder Magnetstreifenleser (Magnetstreifenleser, MSR) betrachtet zu werden. |
Functions
EVT_POS_CX_DEVICE_OWNERSHIP_CHANGE Der EVT_POS_CX_DEVICE_OWNERSHIP_CHANGE-Rückruf wird während des Übergangs des API-Anspruchsbesitzes aufgerufen. Es wird erwartet, dass der Treiber das Gerät in dieser Routine wieder in einen Standardzustand versetzt. |
EVT_POS_CX_DEVICE_REMOTE_CLAIM Der EVT_POS_CX_DEVICE_REMOTE_CLAIM Rückruf wird aufgerufen, wenn das Gerät von "nicht beansprucht" zu "beansprucht" wechselt und dem Treiber zusätzliche Aufgaben ermöglicht. |
EVT_POS_CX_DEVICE_REMOTE_RELEASE Der EVT_POS_CX_DEVICE_REMOTE_RELEASE Rückruf wird aufgerufen, wenn das Gerät losgelassen und ohne Besitzer verlassen wird, und ermöglicht es dem Treiber, zusätzliche Aufgaben zu erledigen. |
EVT_POS_CX_DEVICE_REMOTE_RETAIN Der EVT_POS_CX_DEVICE_REMOTE_RETAIN Rückruf wird aufgerufen, wenn PosCx versucht, einen Anspruch auf einem Netzwerkgerät zu halten und dem Treiber zusätzliche Aufgaben zu ermöglichen. |
POS_CX_ATTRIBUTES_INIT POS_CX_ATTRIBUTES_INIT initialisiert eine POS_CX_ATTRIBUTE-Struktur. |
PosCxClaimDevice PosCxClaimDevice wird aufgerufen, um ein Gerät für die exklusive Verwendung zu beanspruchen. Der Aufrufer sollte PosCxReleaseDevice aufrufen, wenn das Gerät nicht mehr benötigt wird. |
PosCxCleanPendingRequests PosCxCleanPendingRequests wird aufgerufen, um alle ausstehenden Anforderungen für einen bestimmten Aufrufer abzubrechen, der von der geöffneten Instanz identifiziert wird. |
PosCxCleanupEvents PosCxCleanupEvents wird aufgerufen, um alle ausstehenden Ereignisse für einen bestimmten Aufrufer zu bereinigen, der von der geöffneten Instanz identifiziert wird. |
PosCxClose PosCxClose wird aufgerufen, um eine geöffnete PosCx-Bibliotheksinstanz zu löschen. Diese Funktion gibt das Gerät frei, wenn der Aufrufer der Besitzer ist, und bricht ausstehende Anforderungen ab. Er sollte über den EVT_WDF_FILE_CLOSE Rückruf des Treibers aufgerufen werden. |
PosCxGetDeviceInterfaceTag PosCxGetDeviceInterfaceTag gibt das Geräteschnittstellentag zurück, das in PosCxOpen festgelegt ist. |
PosCxGetPendingEvent PosCxGetPendingEvent wird entweder über den Geräteleserückruf oder beim Eintreffen eines neuen Ereignisses aufgerufen. |
PosCxInit PosCxInit wird aufgerufen, um die internen Ressourcen der PosCx-Bibliothek zu initialisieren. Die Ressourcen sind an das Gerät gebunden und werden freigegeben, wenn das Gerät entfernt wird. |
PosCxIsDeviceOwner PosCxIsDeviceOwner überprüft, ob der Aufrufer derzeit den Anspruch auf dem Gerät besitzt. |
PosCxIsPosApp PosCxIsPosApp überprüft, ob die geöffnete Instanz einer Point-of-Service-Anwendung zugeordnet ist. |
PosCxMarkPosApp PosCxMarkPosApp markiert die geöffnete Instanz als einer Point-of-Service-Anwendung zugeordnet oder nicht zugeordnet. |
PosCxOpen PosCxOpen wird aufgerufen, um eine offene PosCx-Bibliotheksinstanz zu erstellen. Diese Funktion initialisiert alle Ressourcen, die sie zum Verwalten einer einzelnen geöffneten Instanz benötigt. Sie sollte über den EVT_WDF_DEVICE_FILE_CREATE Rückruf des Treibers aufgerufen werden. |
PosCxPutPendingEvent PosCxPutPendingEvent erstellt ein neues Ereignisobjekt, kopiert die Ereignisdaten in das neue Ereignisobjekt und versucht, es an den wartenden Aufrufer zu delegieren. |
PosCxPutPendingEventMemory PosCxPutPendingEventMemory versucht, ein Speicherobjekt, das die Ereignisdaten enthält, an einen wartenden Aufrufer zu delegieren. |
PosCxReleaseDevice PosCxReleaseDevice wird aufgerufen, um ein Gerät freizugeben, das zuvor mit PosCxClaimDevice in Anspruch genommen wurde. Sobald das Gerät freigegeben wurde, wird der nächste ausstehende Anspruchsantragsteller höher gestuft. |
PosCxRemoteRequestRelease PosCxRemoteRequestRelease wird immer dann aufgerufen, wenn ein Remotegerät das Gerät zum Freigeben auffordert. Dadurch wird die Anspruchsverhandlung initiiert. |
PosCxRetainDevice PosCxRetainDevice wird aufgerufen, um den Besitz des Geräts zu erweitern. |
Strukturen
BarcodeSymbologyAttributesData Die BarcodeSymbologyAttributesData-Struktur enthält die Attributinformationen für eine Barcodesymbologie. |
MSR_AUTHENTICATE_DEVICE Diese Struktur stellt die Authentifizierungsinformationen bereit, die zum Authentifizieren eines Geräts verwendet werden. |
MSR_DATA_RECEIVED Diese Struktur enthält die Daten, die von einer gestreiften Magnetstreifenkarte gelesen werden. |
MSR_DEAUTHENTICATE_DEVICE Diese Struktur stellt die informationen bereit, die für die Deauthentisierung des Geräts erforderlich sind. |
MSR_ERROR_EVENT Diese Struktur enthält die Fehlerdaten, die an das MagneticStripeReaderErrorOccured-Ereignis übergeben werden. |
MSR_RETRIEVE_DEVICE_AUTHENTICATION_DATA Diese Struktur enthält Authentifizierungsinformationen, die vom Gerät abgerufen werden. |
MSR_SUPPORTED_CARD_TYPES Diese Struktur definiert die Typen von Magnetstreifenkarten, die vom Reader unterstützt werden. |
MSR_UPDATE_KEY Diese Struktur enthält die informationen, die zum Festlegen eines neuen Verschlüsselungsschlüssels erforderlich sind. |
POS_CX_ATTRIBUTES Die POS_CX_ATTRIBUTES-Struktur enthält Zeiger auf Ereignisrückruffunktionen, die vom Clienttreiber implementiert werden. |
PosBarcodeScanDataTypeData Diese Struktur beschreibt einen Puffer von Barcodesymbologien, die vom Treiber unterstützt werden. |
PosBarcodeScannerCapabilitiesType Diese Struktur definiert den Typ der Scannerfunktionen, die ein Gerät unterstützt, z. B. ob das Gerät Statistikberichte und Bildvorschau unterstützt. |
PosBarcodeScannerDataReceivedEventData Diese Struktur enthält die gescannten Daten, die an das BarcodeScannerDataReceived-Ereignis übergeben werden. |
PosBarcodeScannerErrorOccurredEventData Diese Struktur enthält die Fehlerdaten, die an das BarcodeScannerErrorOccurred-Ereignis übergeben werden. |
PosDeviceBasicsType Diese Struktur gibt den Typ des Geräts, die Version und die empfohlene Puffergröße an, wie vom Treiber angegeben. |
PosDeviceInformation Diese Struktur stellt Geräteinformationen bereit, wie im UPOS-Standard (Unified Point of Service) definiert und erforderlich. |
PosEventDataHeader Diese Struktur beschreibt die gescannten Bilddaten, die an das BarcodeScannerImagePreviewReceived-Ereignis übergeben werden. |
PosMagneticStripeReaderCapabilitiesType Diese Struktur definiert die Arten von MSR-Funktionen (Magnetic Stripe Reader), die ein Gerät unterstützt, z. B. ob das Gerät die Nachverfolgdatenmaskierung unterstützt. |
PosProfileType Diese Struktur beschreibt die Anzahl der Profilzeichenfolgen in einem Puffer. |
PosStatisticsHeader Diese Struktur definiert UPOS-Standardinformationen (Unified Point of Service) für ein Gerät. Diese Struktur ist der Header für eine eingehende Statistik. |
PosStatusUpdatedEventData Diese Struktur enthält Daten, die an das StatusUpdated-Ereignis übergeben werden. |
PosStringType Diese Struktur stellt eine Pos-Unicode-Zeichenfolge (Point of Service) mit einer Länge von DataLengthInBytes dar. |
PosValueStatisticsEntry Diese Struktur enthält den Wert einer Statistik. |