使用C#调用PC\SC接口返回读卡器数量不对
using System;
using System.Text;
using System.Runtime.InteropServices;
class PCSC
{
    public struct SCARD_IO_REQUEST
    {
        public int dwProtocol;
        public int cbPciLength;
    }
    [DllImport("WinScard.dll")]
    public static extern int SCardEstablishContext(uint dwScope, int nNotUsed1, int nNotUsed2, ref uint phContext);
    [DllImport("WinScard.dll")]
    public static extern int SCardReleaseContext(int phContext);
    [DllImport("WinScard.dll")]
    public static extern int SCardConnect(int hContext, string cReaderName,
    uint dwShareMode, uint dwPrefProtocol, ref int phCard, ref int ActiveProtocol);
    [DllImport("WinScard.dll")]
    public static extern int SCardDisconnect(int hCard, int Disposition);
    [DllImport("WinScard.dll")]
    public static extern int SCardListReaderGroups(int hContext, ref string cGroups, ref int nStringSize);
    [DllImport("WinScard.dll")]
    public static extern int SCardListReaders(uint hContext, string cGroups, ref string cReaderLists, ref int nReaderCount);
    [DllImport("WinScard.dll")]
    public static extern int SCardFreeMemory(uint hContext, string cResourceToFree);
    [DllImport("WinScard.dll")]
    public static extern int SCardGetAttrib(int hContext, uint dwAttrId,
    ref byte[] bytRecvAttr, ref int nRecLen);
    [DllImport("WinScard.dll")]
    public static extern int SCardTransmit(int hCard, ref SCARD_IO_REQUEST pioSendPci, byte[] pbSendBuffer, int cbSendLength, ref SCARD_IO_REQUEST pioRecvPci, ref byte[] pbRecvBuffer, ref int pcbRecvLength);
    [DllImport("WinScard.dll")]