Sample code for 30+ languages & platforms
PowerShell

PC/SC List Smart Card Readers (and USB Tokens)

See more SCard Examples

Demonstrates how to list the smart card readers and USB tokens connected to the computer.

Note: This functionality was introduced in Chilkat v9.5.0.87.

Chilkat PowerShell Downloads

PowerShell
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"

$success = $false

# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

$scard = New-Object Chilkat.SCard

# First establish a context to the PC/SC Resource Manager
$success = $scard.EstablishContext("user")
if ($success -eq $false) {
    $($scard.LastErrorText)
    exit
}

$stReaders = New-Object Chilkat.StringTable
$success = $scard.ListReaders($stReaders)
if ($success -eq $false) {
    $($scard.LastErrorText)
    exit
}

$numReaders = $stReaders.Count
$i = 0
while ($i -lt $numReaders) {
    $([string]$i + ": " + $stReaders.StringAt($i))
    $i = $i + 1
}

# Sample output:
# 0: Alcor Micro USB Smart Card Reader 0
# 1: FS USB Token 0
# 2: FT Java Token 0
# 3: SCM Microsystems Inc. SCR33x USB Smart Card Reader 0
# 4: Yubico YubiKey OTP+FIDO+CCID 0

# Applications should always release the context when finished.
$success = $scard.ReleaseContext()
if ($success -eq $false) {
    $($scard.LastErrorText)
}