Implementation of the high-level ICardTerminal abstraction based on the PC/SC Workgroup API.;

Namespace: CardWerk.SmartCard
Assembly: CardWerk.SmartCard (in CardWerk.SmartCard.dll)

Public Class CardPcScTerminal 
Inherits CardTerminalBase 
Implements ICardTerminalClass2
This language is not supported or no code example is available.
public class CardPcScTerminal : CardTerminalBase
ICardTerminalClass2
This language is not supported or no code example is available.
public ref class CardPcScTerminal : public CardTerminalBase^, 
public ICardTerminalClass2^
This language is not supported or no code example is available.
public class CardPcScTerminal 
extends CardTerminalBase 
implements ICardTerminalClass2
This language is not supported or no code example is available.
Name Description
Public constructor CardPcScTerminal(SCardResourceManager, bool, string) Creates a CardPcScTerminal instance for a given reader, using the given PC/SC resource manager.
Public constructor CardPcScTerminal(string) Creates a CardPcScTerminal instance for a card terminal where the PC/SC Workgroup API reader name is given.
Public constructor CardPcScTerminal() Default constructor.
Top
Name Description
Public property AccessMode Selects the PC/SC access mode that will be used by the card connection. The default access mode is SHARED unless set otherwise in the registry. It can be changed to EXCLUSIVE by the HKLM\SOFTWARE\Subsembly\SmartCard\SharedAccess key. "1" or no key means SHARED any other value translates to EXCLUSIVE.
Public property CardComm Reference to SCardComm that is used by this class. Don't use this reference unless absolutely necessary.
Public property CardResourceManager Reference to SCardResourceManager that is used by this class. Don't use this reference unless absolutely necessary.
Public property Config Boilerplate implementation of ICardTerminal.Config that simply returns the value of the protected member m_aConfig. (inherited from CardTerminalBase).
Public property FunctionalUnits Boilerplate implementation of ICardTerminal.FunctionalUnits that simply returns the value of the protected member m_nFunctionalUnits. (inherited from CardTerminalBase).
Public property InternalName Boilerplate implementation of ICardTerminal.InternalName that simply returns the value of the protected member m_sInternalName. (inherited from CardTerminalBase).
Public property IsClass2 Gets a value indicating whether this object is class 2.
Public property ManufacturerName Boilerplate implementation of ICardTerminal.ManufacturerName that simply returns the value of the protected member m_sManufacturerName. (inherited from CardTerminalBase).
Public property PhysicalConnection Boilerplate implementation of ICardTerminal.PhysicalConnection that simply returns the value of the protected member m_sPhysicalConnection. (inherited from CardTerminalBase).
Public property ProductAdditionalInfo Boilerplate implementation of ICardTerminal.ProductAdditionalInfo that simply returns the value of the protected member m_sProductAdditionalInfo. (inherited from CardTerminalBase).
Public property ProductName Boilerplate implementation of ICardTerminal.ProductName that simply returns the value of the protected member m_sProductName. (inherited from CardTerminalBase).
Public property ProductSerialNumber Boilerplate implementation of ICardTerminal.ProductSerialNumber that simply returns the value of the protected member m_sProductSerialNumber. (inherited from CardTerminalBase).
Public property ProductVersion Boilerplate implementation of ICardTerminal.ProductVersion that simply returns the value of the protected member m_sProductVersion. (inherited from CardTerminalBase).
Public property Slots Boilerplate implementation of ICardTerminal.Slots that simply returns the value of the protected member m_nSlots. (inherited from CardTerminalBase).
Public property UserSlots Boilerplate implementation of ICardTerminal.UserSlots that simply returns the value of the protected member m_nUserSlots. (inherited from CardTerminalBase).
Top
Name Description
Public method BeginTransaction(int) Boilerplate implementation of ICardTerminal.BeginTransaction. (inherited from CardTerminalBase).
Public method ConnectCard(int, CardTypes, out byte[]) Boilerplate implementation of ICardTerminal.ConnectCard. (inherited from CardTerminalBase).
Public method DeliverCard(int, bool) Boilerplate implementation of ICardTerminal.DeliverCard. (inherited from CardTerminalBase).
Public method DisconnectCard(int) Boilerplate implementation of ICardTerminal.DisconnectCard. (inherited from CardTerminalBase).
Public method Dispose() Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. (inherited from CardTerminalBase).
Public method EndTransaction(int) Boilerplate implementation of ICardTerminal.EndTransaction. (inherited from CardTerminalBase).
Public method Init(CardTerminalConfig) Boilerplate implementation of ICardTerminal.Init. (inherited from CardTerminalBase).
Public method IsCardPresent(int, ref bool) Boilerplate implementation of ICardTerminal.IsCardPresent. (inherited from CardTerminalBase).
Public method ReconnectCard(int, out byte[]) Boilerplate implementation of ICardTerminal.ReconnectCard. (inherited from CardTerminalBase).
Public method ResetCardTerminal() Boilerplate implementation of ICardTerminal.ResetCardTerminal. (inherited from CardTerminalBase).
Public method SendCommand(int, CardCommandAPDU) Boilerplate implementation of ICardTerminal.SendCommand. (inherited from CardTerminalBase).
Public method SendVerifyCommand(int, CardPinControl) Sends a command APDU to the card using secure PIN entry.
Top

An application that wants to use the convenient high level abstraction of the ICardTerminal interface with a PC/SC Workgroup API compatible reader shall do so by instantiating an instance of this class and then use the services of the ICardTerminal interface. After instantiation, only the ICardTerminal interface should be used and not the class methods directly.

CardWerk.SmartCard.CardPcScTerminal

.NET Framework

Supported in: 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

.NET Core

Supported in: 2.0, 2.1, 2.2, 3.0, 3.1, 5.0, 6.0, 7.0, 8.0

.NET Standard

Supported in: 2.0