⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 devicefile.h

📁 usblsccid-0.9.2: ED1x Smart Card Reader Driver
💻 H
字号:
// DeviceFile.h: interface for the CDeviceFile class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_DEVICEFILE_H__242B643C_DF6F_4531_9F25_182CCC461FFD__INCLUDED_)
#define AFX_DEVICEFILE_H__242B643C_DF6F_4531_9F25_182CCC461FFD__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include <setupapi.h>
#include <basetyps.h>

#include <winscard.h>

static const GUID SmartCardReaderGuid = {
 	0x50DD5230,
    0xBA8A,
    0x11D1,
    {0xBF,0x5D,0x00,0x00,0xF8,0x05,0xF5,0x30}
};

#define IOCTL_USCR_GET_CONFIG_DESCRIPTOR  	SCARD_CTL_CODE( 0x800 )
#define IOCTL_USCR_RESET_DEVICE           	SCARD_CTL_CODE( 0x801 )                                                    
#define IOCTL_USCR_RESET_PIPE  				SCARD_CTL_CODE( 0x802 )
#define IOCTL_USCR_CCID						SCARD_CTL_CODE( 0x803 )
#define IOCTL_USCR_DecrementIoCount			SCARD_CTL_CODE( 0x805 )
#define IOCTL_USCR_IncrementIoCount			SCARD_CTL_CODE( 0x806 )
#define	IOCTL_USCR_SetPendingIoEvent		SCARD_CTL_CODE( 0x807 )
#define	IOCTL_USCR_ClearPendingIoEvent		SCARD_CTL_CODE( 0x808 )
#define	IOCTL_USCR_ReadPendingIoEventState	SCARD_CTL_CODE( 0x809 )

#define PC_to_RDR_IccPowerOn				0x62
#define PC_to_RDR_IccPowerOff 				0x63
#define PC_to_RDR_GetSlotStatus 			0x65
#define PC_to_RDR_XfrBlock 					0x6F
#define PC_to_RDR_GetResponse 				0x70
#define PC_to_RDR_GetParameters 		0x6C
#define PC_to_RDR_ResetParameters 		0x6D
#define PC_to_RDR_SetParameters 		0x61

class CDeviceFile  
{
public:
	int GetCurDev(void);
	void SetCurDev(int n);
	BOOL DeviceIoControl(DWORD dwIoControlCode,LPVOID lpInBuffer, DWORD nInBufferSize,LPVOID lpOutBuffer,DWORD nOutBufferSize,LPDWORD lpBytesReturned);
	BOOLEAN ListDevices(LPGUID  pGuid = (LPGUID)&SmartCardReaderGuid);
	CDeviceFile();
	virtual ~CDeviceFile();
public:
		CStringArray m_asDevName;
private:
	int m_nCurDev;
	CFile m_file;
	HANDLE OpenOneDevice(HDEVINFO HardwareDeviceInfo,PSP_INTERFACE_DEVICE_DATA   DeviceInfoData,LPTSTR devName);

};

#endif // !defined(AFX_DEVICEFILE_H__242B643C_DF6F_4531_9F25_182CCC461FFD__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -