Share via


RDF_CARD_TRACKING (Windows Embedded CE 6.0)

1/6/2010

The RDF_CARD_TRACKING callback function installs an event handler to track card insertions and removals. This callback function is mandatory.

Syntax

NTSTATUS (*ReaderFunction[RDF_CARD_TRACKING])(
  PSMARTCARD_EXTENSION SmartcardExtension
);

Parameters

  • SmartcardExtension
    [in] Points to the smart card extension of the device.

Return Value

This function returns an NTSTATUS value. Possible values are the following.

Value Description

STATUS_PENDING

Card tracking has been started.

STATUS_INVALID_DEVICE_STATE

The device cannot accept the request.

STATUS_SUCCESS

Card status matches the requested tracking call.

STATUS_DEVICE_BUSY

A card tracking event is already pending.

Remarks

Before the library calls RDF_CARD_TRACKING, it checks if the status already matches the current card status. That is, a card is inserted and the caller sends an IOCTL_SMARTCARD_IS_PRESENT code. In this case, the library returns STATUS_SUCCESS without calling this function.

Otherwise, the driver will be called and it should start card tracking. Usually, the driver returns STATUS_PENDING to this call, because the current card status does not match the status to check for. The driver must complete this call as soon as it detects the insertion or removal. This is done by a call to PulseEvent.

Requirements

Header smclib.h
Windows Embedded CE Windows CE 3.0 and later

See Also

Reference

Smart Card Driver Functions
IOCTL_SMARTCARD_IS_PRESENT

Other Resources

PulseEvent