Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

The following table shows the Smart Card Services functions with a description of the purpose of each.

Programming element Description

SCardBeginTransaction

This function starts a transaction, waiting for the completion of all other transactions before it begins.

SCardCancel

This function terminates all outstanding actions within a specific resource manager context.

SCardConnect

This function establishes a connection, using a specific resource manager context, between the calling application and a smart card contained by a specific reader.

SCardControl

This function gives you direct control of the reader. You can call it any time after a successful call to SCardConnectand before a successful call to SCardDisconnect.

SCardDisconnect

This function terminates a connection previously opened between the calling application and a smart card in the target reader.

SCardEndTransaction

This function completes a previously declared transaction, enabling other applications to resume interactions with the card.

SCardEstablishContext

This function establishes the resource manager context (the scope) within which database operations are performed.

SCardForgetCardType

This function removes an introduced smart card from the smart card subsystem.

SCardForgetReader

This function removes a previously introduced reader from control by the smart card subsystem.

SCardFreeMemory

This function frees memory that has been returned from the resource manager using the SCARD_AUTOALLOCATE length designator.

SCardGetAttrib

This function gets the current reader attributes for the specified handle.

SCardGetCardTypeProviderName

This function returns the name of the dynamic link library (DLL) containing the provider for a given card name and provider type.

SCardGetProviderId

This function returns the globally unique identifier (GUID) of the primary service provider for a specified card.

SCardGetStatusChange

This function blocks execution until the current availability of the cards in a specific set of readers changes.

SCardIntroduceCardType

This function introduces a smart card to the smart card subsystem for the active user by adding it to the smart card database.

SCardIntroduceReader

This function introduces a new name for an existing smart card reader. Smart card readers are automatically introduced to the system.

SCardIsValidContext

This function determines whether a smart card context handle is valid.

SCardListCards

This function searches the smart card database and provides a list of named cards previously introduced to the system by a user.

SCardListInterfaces

This function provides a list of interfaces supplied by a specified card.

SCardListReaders

This function provides the list of readers within a set of named reader groups, eliminating duplicates.

SCardLocateCards

This function searches the readers listed in the rgReaderStatesparameter for a card with an Automatic Terminal Recognition (ATR) string that matches one of the card names specified in mszCards, returning immediately with the result.

SCardLocateCardsByATR

This function searches the readers listed in the rgReaderStatesparameter for a card with an ATR string that matches one of the ATRs specified in rgAtrMasks, returning immediately with the result.

SCardReconnect

This function re-establishes an existing connection between the calling application and a smart card.

SCardReleaseContext

This function closes an established resource manager context, freeing any resources allocated under that context, including SCARDHANDLE objects and memory allocated using the SCARD_AUTOALLOCATE length designator.

SCardSetAttrib

This function sets the specified reader attribute for the specified handle.

SCardSetCardTypeProviderName

This function specifies the name of the DLL containing the provider for a given card name and provider type.

SCardStatus

This function provides the current status of a smart card in a reader. You can call it any time after a successful call to SCardConnectand before a successful call to SCardDisconnect.

SCardTransmit

This function sends a service request to the smart card and expects to receive data back from the card.

See Also

Other Resources

Smart Card