mduscreader.bas
来自「一个读写mifare卡VB编程事例,适合做IC卡应用开发.」· BAS 代码 · 共 538 行 · 第 1/3 页
BAS
538 行
'SCREADER_API BOOL WINAPI ICC_GetATR(long hCard,BYTE* pAtr,long* pAtrLen);
Public Declare Function ICC_GetATR Lib "SCReader.dll" (ByVal hCard As Long, pAtr As Byte, pAtrLen As Long) As Long
'SCREADER_API BOOL WINAPI ICC_GetCardType(long hCard,BYTE* pCardType);
Public Declare Function ICC_GetCardType Lib "SCReader.dll" (ByVal hCard As Long, pCardType As Byte) As Long
'SCREADER_API BOOL WINAPI ICC_SetCardType(long hCard,BYTE CardType);
Public Declare Function ICC_SetCardType Lib "SCReader.dll" (ByVal hCard As Long, ByVal cardtype As Byte) As Long
'SCREADER_API BOOL WINAPI ICC_GetSubType(long hCard,BYTE* pSubType);
Public Declare Function ICC_GetSubType Lib "SCReader.dll" (ByVal hCard As Long, pSubType As Byte) As Long
'SCREADER_API BOOL WINAPI ICC_SetSubType(long hCard,BYTE SubType);
Public Declare Function ICC_SetSubType Lib "SCReader.dll" (ByVal hCard As Long, ByVal SubType As Byte) As Long
'CPU卡
Public Type PPSSTRUCT
PPS0 As Byte
PPS1 As Byte
PPS2 As Byte
PPS3 As Byte
End Type
Public Type APDUSTRUCT
Cla As Byte
Ins As Byte
P1 As Byte
P2 As Byte
lc As Long
Le As Long
SW1 As Byte
SW2 As Byte
DataBuf(512) As Byte
End Type
'SCREADER_API BOOL WINAPI SAM_SetPROT(long hCard,BYTE PROT);
Public Declare Function SAM_SetPROT Lib "SCReader.dll" (ByVal hCard As Long, ByVal PROT As Byte) As Long
'SCREADER_API BOOL WINAPI SAM_GetPROT(long hCard,BYTE* pPROT);
Public Declare Function SAM_GetPROT Lib "SCReader.dll" (ByVal hCard As Long, pPROT As Byte) As Long
'SCREADER_API BOOL WINAPI SAM_SetFiDi(long hCard,BYTE FiDi);
Public Declare Function SAM_SetFiDi Lib "SCReader.dll" (ByVal hCard As Long, ByVal fidi As Byte) As Long
'SCREADER_API BOOL WINAPI SAM_GetFiDi(long hCard,BYTE* pFiDi);
Public Declare Function SAM_GetFiDi Lib "SCReader.dll" (ByVal hCard As Long, pFiDi As Byte) As Long
'SCREADER_API BOOL WINAPI SAM_SetGTR(long hCard,BYTE GTR);
Public Declare Function SAM_SetGTR Lib "SCReader.dll" (ByVal hCard As Long, ByVal GTR As Byte) As Long
'SCREADER_API BOOL WINAPI SAM_GetGTR(long hCard,BYTE* pGTR);
Public Declare Function SAM_GetGTR Lib "SCReader.dll" (ByVal hCard As Long, pGTR As Byte) As Long
'SCREADER_API BOOL WINAPI SAM_WarmReset(long hCard);
Public Declare Function SAM_WarmReset Lib "SCReader.dll" (ByVal hCard As Long) As Long
'SCREADER_API BOOL WINAPI SAM_SendPPS(long hCard,PPSSTRUCT* pPPS);
Public Declare Function SAM_SendPPS Lib "SCReader.dll" (ByVal hCard As Long, pPPS As PPSSTRUCT) As Long
'SCREADER_API BOOL WINAPI SAM_ExecuteAPDU(long hCard,APDUSTRUCT* pApdu);
Public Declare Function SAM_ExecuteAPDU Lib "SCReader.dll" (ByVal hCard As Long, pApdu As APDUSTRUCT) As Long
'SCREADER_API BOOL WINAPI SAM_ExecuteTPDU(long hCard,BYTE* pTpduCmd,long dwCmdLen,BYTE* pTpduRsp,long* pdwRspLen);
Public Declare Function SAM_ExecuteTPDU Lib "SCReader.dll" (ByVal hCard As Long, pTpduCmd As Byte, ByVal dwCmdLen As Long, pTpduRsp As Byte, pdwRspLen As Long) As Long
'SCREADER_API BOOL WINAPI SAM_SetIFSD(long hCard,BYTE ifsd);
Public Declare Function SAM_SetIFSD Lib "SCReader.dll" (ByVal hCard As Long, ByVal ifsd As Byte) As Long
'SLE4442操作函数
'SCREADER_API BOOL SC4442_Read(DWORD hCard,DWORD dwAddr,BYTE* pDataBuf, DWORD dwLen);
Public Declare Function SC4442_Read Lib "SCReader.dll" (ByVal hCard As Long, ByVal dwAddr As Long, pDataBuf As Byte, ByVal dwLen As Long) As Long
Public Declare Function SC4442_ReadStr Lib "SCReader.dll" Alias "SC4442_Read" (ByVal hCard As Long, ByVal dwAddr As Long, ByVal pDataBuf As String, ByVal dwLen As Long) As Long
'SCREADER_API BOOL SC4442_Write(DWORD hCard,DWORD dwAddr,BYTE* pDataBuf,DWORD dwLen);
Public Declare Function SC4442_Write Lib "SCReader.dll" (ByVal hCard As Long, ByVal dwAddr As Long, pDataBuf As Byte, ByVal dwLen As Long) As Long
Public Declare Function SC4442_WriteStr Lib "SCReader.dll" Alias "SC4442_Write" (ByVal hCard As Long, ByVal dwAddr As Long, ByVal pDataBuf As String, ByVal dwLen As Long) As Long
'SCREADER_API BOOL SC4442_ReadLockBit(DWORD hCard,DWORD dwAddr,BYTE* pBuf);
Public Declare Function SC4442_ReadLockBit Lib "SCReader.dll" (ByVal hCard As Long, pDataBuf As Byte) As Long
'SCREADER_API BOOL SC4442_WriteLockBit(DWORD hCard,DWORD dwAddr,BYTE* pDataBuf,DWORD dwLen);
Public Declare Function SC4442_WriteLockBit Lib "SCReader.dll" (ByVal hCard As Long, ByVal dwAddr As Long, pDataBuf As Byte, ByVal dwLen As Long) As Long
'SCREADER_API BOOL SC4442_Verify(DWORD hCard,BYTE psc0,BYTE psc1,BYTE psc2);
Public Declare Function SC4442_Verify Lib "SCReader.dll" (ByVal hCard As Long, ByVal psc0 As Byte, ByVal psc1 As Byte, ByVal psc2 As Byte) As Long
'SCREADER_API BOOL SC4442_ChangePwd(DWORD hCard,BYTE psc0,BYTE psc1,BYTE psc2);
Public Declare Function SC4442_ChangePwd Lib "SCReader.dll" (ByVal hCard As Long, ByVal psc0 As Byte, ByVal psc1 As Byte, ByVal psc2 As Byte) As Long
'SCREADER_API BOOL SC4442_ReadEC(DWORD hCard,BYTE* pEC);
Public Declare Function SC4442_ReadEC Lib "SCReader.dll" (ByVal hCard As Long, pEC As Byte) As Long
'SCREADER_API long WINAPI SC4442_ECount(long hCard);
Public Declare Function SC4442_ECount Lib "SCReader.dll" (ByVal hCard As Long) As Long
'SLE4428读写函数
'SCREADER_API BOOL WINAPI SC4428_Read(long hCard,long dwAddr,BYTE* pDataBuf, long dwLen);
Public Declare Function SC4428_Read Lib "SCReader.dll" (ByVal hCard As Long, ByVal dwAddr As Long, pDataBuf As Byte, ByVal dwLen As Long) As Long
Public Declare Function SC4428_ReadStr Lib "SCReader.dll" Alias "SC4428_Read" (ByVal hCard As Long, ByVal dwAddr As Long, ByVal pDataBuf As String, ByVal dwLen As Long) As Long
'SCREADER_API BOOL WINAPI SC4428_Write(long hCard,long dwAddr,BYTE* pDataBuf, long dwLen);
Public Declare Function SC4428_Write Lib "SCReader.dll" (ByVal hCard As Long, ByVal dwAddr As Long, pDataBuf As Byte, ByVal dwLen As Long) As Long
Public Declare Function SC4428_WriteStr Lib "SCReader.dll" Alias "SC4428_Write" (ByVal hCard As Long, ByVal dwAddr As Long, ByVal pDataBuf As String, ByVal dwLen As Long) As Long
'SCREADER_API BOOL WINAPI SC4428_WriteLock(long hCard,long dwAddr,BYTE* pDataBuf, long dwLen);
Public Declare Function SC4428_WriteLock Lib "SCReader.dll" (ByVal hCard As Long, ByVal dwAddr As Long, pDataBuf As Byte, ByVal dwLen As Long) As Long
Public Declare Function SC4428_WriteLockStr Lib "SCReader.dll" Alias "SC4428_WriteLock" (ByVal hCard As Long, ByVal dwAddr As Long, ByVal pDataBuf As String, ByVal dwLen As Long) As Long
'SCREADER_API BOOL WINAPI SC4428_CompareLock(long hCard,long dwAddr,BYTE* pDataBuf, long dwLen);
Public Declare Function SC4428_CompareLock Lib "SCReader.dll" (ByVal hCard As Long, ByVal dwAddr As Long, pDataBuf As Byte, ByVal dwLen As Long) As Long
Public Declare Function SC4428_CompareLockStr Lib "SCReader.dll" Alias "SC4428_CompareLock" (ByVal hCard As Long, ByVal dwAddr As Long, ByVal pDataBuf As String, ByVal dwLen As Long) As Long
'SCREADER_API BOOL WINAPI SC4428_ReadEx(long hCard,long dwAddr,BYTE* pDataBuf,BYTE* pLockBuf,long dwLen);
Public Declare Function SC4428_ReadEx Lib "SCReader.dll" (ByVal hCard As Long, ByVal dwAddr As Long, pDataBuf As Byte, pLockBuf As Byte, ByVal dwLen As Long) As Long
Public Declare Function SC4428_ReadExStr Lib "SCReader.dll" Alias "SC4428_ReadEx" (ByVal hCard As Long, ByVal dwAddr As Long, ByVal pDataBuf As String, pLockBuf As Byte, ByVal dwLen As Long) As Long
'SCREADER_API BOOL WINAPI SC4428_Verify(long hCard,BYTE psc0,BYTE psc1);
Public Declare Function SC4428_Verify Lib "SCReader.dll" (ByVal hCard As Long, ByVal psc0 As Byte, ByVal psc1 As Byte) As Long
'SCREADER_API BOOL WINAPI SC4428_ChangePwd(long hCard,BYTE psc0,BYTE psc1);
Public Declare Function SC4428_ChangePwd Lib "SCReader.dll" (ByVal hCard As Long, ByVal psc0 As Byte, ByVal psc1 As Byte) As Long
'SCREADER_API long WINAPI SC4428_ECount(long hCard);
Public Declare Function SC4428_ECount Lib "SCReader.dll" (ByVal hCard As Long) As Long
'AT24读写函数
'SCREADER_API void WINAPI SCAT24_SetSubType(long hCard,long dwSubType);
Public Declare Sub SCAT24_SetSubType Lib "SCReader.dll" (ByVal hCard As Long, ByVal dwSubType As Long)
'SCREADER_API long WINAPI SCAT24_GetSubType(long hCard);
Public Declare Function SCAT24_GetSubType Lib "SCReader.dll" (ByVal hCard As Long) As Long
'SCREADER_API BOOL WINAPI SCAT24_Read(long hCard,long dwPage, long dwAddr,BYTE* pDataBuf, long dwLen);
Public Declare Function SCAT24_Read Lib "SCReader.dll" (ByVal hCard As Long, ByVal dwPage As Long, ByVal dwAddr As Long, pDataBuf As Byte, ByVal dwLen As Long) As Long
Public Declare Function SCAT24_ReadStr Lib "SCReader.dll" Alias "SCAT24_Read" (ByVal hCard As Long, ByVal dwPage As Long, ByVal dwAddr As Long, ByVal pDataBuf As String, ByVal dwLen As Long) As Long
'SCREADER_API BOOL WINAPI SCAT24_Write(long hCard,long dwPage, long dwAddr,BYTE* pDataBuf, long dwLen);
Public Declare Function SCAT24_Write Lib "SCReader.dll" (ByVal hCard As Long, ByVal dwPage As Long, ByVal dwAddr As Long, pDataBuf As Byte, ByVal dwLen As Long) As Long
Public Declare Function SCAT24_WriteStr Lib "SCReader.dll" Alias "SCAT24_Write" (ByVal hCard As Long, ByVal dwPage As Long, ByVal dwAddr As Long, ByVal pDataBuf As String, ByVal dwLen As Long) As Long
'AT88SC1604
'SCREADER_API BOOL WINAPI SC1604_Read(long hCard,long dwAddr,BYTE* pDataBuf, long dwLen);
Public Declare Function SC1604_Read Lib "SCReader.dll" (ByVal hCard As Long, ByVal dwAddr As Long, pDataBuf As Byte, ByVal dwLen As Long) As Long
Public Declare Function SC1604_ReadStr Lib "SCReader.dll" Alias "SC1604_Read" (ByVal hCard As Long, ByVal dwAddr As Long, ByVal pDataBuf As String, ByVal dwLen As Long) As Long
'SCREADER_API BOOL WINAPI SC1604_Write(long hCard,long dwAddr,BYTE* pDataBuf, long dwLen);
Public Declare Function SC1604_Write Lib "SCReader.dll" (ByVal hCard As Long, ByVal dwAddr As Long, pDataBuf As Byte, ByVal dwLen As Long) As Long
Public Declare Function SC1604_WriteStr Lib "SCReader.dll" Alias "SC1604_Write" (ByVal hCard As Long, ByVal dwAddr As Long, ByVal pDataBuf As String, ByVal dwLen As Long) As Long
'SCREADER_API BOOL WINAPI SC1604_BeginPersonalize(long hCard);
Public Declare Function SC1604_BeginPersonalize Lib "SCReader.dll" (ByVal hCard As Long) As Long
'SCREADER_API BOOL WINAPI SC1604_ClosePersonalize(long hCard);
Public Declare Function SC1604_ClosePersonalize Lib "SCReader.dll" (ByVal hCard As Long) As Long
'SCREADER_API BOOL WINAPI SC1604_TestPersonalize(long hCard,BOOL* pbRetVal);
Public Declare Function SC1604_TestPersonalize Lib "SCReader.dll" (ByVal hCard As Long, bRetval As Long) As Long
'SCREADER_API BOOL WINAPI SC1604_ReadZone(long hCard, long dwZone,long dwAddr,BYTE* pDataBuf, long dwLen);
Public Declare Function SC1604_ReadZone Lib "SCReader.dll" (ByVal hCard As Long, ByVal dwZone As Long, ByVal dwAddr As Long, pDataBuf As Byte, ByVal dwLen As Long) As Long
Public Declare Function SC1604_ReadZoneStr Lib "SCReader.dll" Alias "SC1604_ReadZone" (ByVal hCard As Long, ByVal dwZone As Long, ByVal dwAddr As Long, ByVal pDataBuf As String, ByVal dwLen As Long) As Long
'SCREADER_API BOOL WINAPI SC1604_WriteZone(long hCard, long dwZone,long dwAddr,BYTE* pDataBuf, long dwLen);
Public Declare Function SC1604_WriteZone Lib "SCReader.dll" (ByVal hCard As Long, ByVal dwZone As Long, ByVal dwAddr As Long, pDataBuf As Byte, ByVal dwLen As Long) As Long
Public Declare Function SC1604_WriteZoneStr Lib "SCReader.dll" Alias "SC1604_WriteZone" (ByVal hCard As Long, ByVal dwZone As Long, ByVal dwAddr As Long, ByVal pDataBuf As String, ByVal dwLen As Long) As Long
'SCREADER_API BOOL WINAPI SC1604_Verify(long hCard,long dwZone, BYTE psc0, BYTE psc1);
Public Declare Function SC1604_Verify Lib "SCReader.dll" (ByVal hCard As Long, ByVal dwZone As Long, ByVal psc0 As Byte, ByVal psc1 As Byte) As Long
'SCREADER_API BOOL WINAPI SC1604_ChangePwd(long hCard,long dwZone, BYTE psc0, BYTE psc1);
Public Declare Function SC1604_ChangePwd Lib "SCReader.dll" (ByVal hCard As Long, ByVal dwZone As Long, ByVal psc0 As Byte, ByVal psc1 As Byte) As Long
'SCREADER_API BOOL WINAPI SC1604_Fuse(long hCard);
Public Declare Function SC1604_Fuse Lib "SCReader.dll" (ByVal hCard As Long) As Long
'SCREADER_API void WINAPI SC1604_SetSubType(long hCard,long dwSubType);
Public Declare Sub SC1604_SetSubType Lib "SCReader.dll" (ByVal hCard As Long, ByVal dwSubType As Long)
'SCREADER_API long WINAPI SC1604_GetSubType(long hCard);
Public Declare Function SC1604_GetSubType Lib "SCReader.dll" (ByVal hCard As Long) As Long
'辅助函数
'SCREADER_API void SCHelp_ErrorDesc(DWORD dwError,LPTSTR pDesc ,DWORD maxNum);
Public Declare Function SCHelp_ErrorDesc Lib "SCReader.dll" (ByVal dwError As Long, ByVal pDesc As String, ByVal maxNum As Long) As Long
'SCREADER_API void WINAPI SCHelp_BytesToHexString(BYTE* pBuffer,DWORD count,LPTSTR pChar);
Public Declare Sub SCHelp_BytesToHexString Lib "SCReader.dll" (pBuffer As Byte, ByVal lCount As Long, ByVal strHex As String)
'SCREADER_API WINAPI DWORD SCHelp_HexStringToBytes(LPCTSTR pSrc,BYTE* pTar,int MaxCount);
Public Declare Function SCHelp_HexStringToBytes Lib "SCReader.dll" (ByVal strHex As String, pBuffer As Byte, ByVal lMaxCount As Long) As Long
'SCREADER_API long WINAPI SCHelp_StringToBytes(LPCTSTR pSrc,BYTE* pTar,long lMaxCount);
Public Declare Function SCHelp_StringToBytes Lib "SCReader.dll" (ByVal pSrc As String, pBuffer As Byte, ByVal lMaxCount As Long) As Long
'SCREADER_API void WINAPI SCHelp_BytesToString(BYTE* pBuffer,long lCount,LPTSTR pStr);
Public Declare Sub SCHelp_BytesToString Lib "SCReader.dll" (pBuffer As Byte, ByVal lCount As Long, ByVal pStr As String)
'SCREADER_API long WINAPI SCHelp_StrLen(const char *pBuf);
Public Declare Function SCHelp_StrLen Lib "SCReader.dll" (ByVal pBuf As String) As Long
'SCREADER_API void WINAPI SCHelp_DesEncrypt(BYTE* pKey,BYTE *pBuf);
Public Declare Sub SCHelp_DesEncrypt Lib "SCReader.dll" (pKey As Byte, pBuf As Byte)
'SCREADER_API void WINAPI SCHelp_DesDecrypt(BYTE* pKey,BYTE *pBuf);
Public Declare Sub SCHelp_DesDecrypt Lib "SCReader.dll" (pKey As Byte, pBuf As Byte)
'射频卡通用函数
Public Declare Function RF_Config Lib "SCReader.dll" (ByVal hPort As Long, ByVal mode As Byte) As Long
Public Declare Function RF_Reset Lib "SCReader.dll" (ByVal hPort As Long, ByVal uMsec As Byte) As Long
Public Declare Function RF_Transceive Lib "SCReader.dll" (ByVal hPort As Long, pInbuf As Byte, ByVal InCount As Byte, pOutBuf As Byte, pOutCount As Byte) As Long
Public Declare Function RF_Transmit Lib "SCReader.dll" (ByVal hPort As Long, pInbuf As Byte, ByVal InCount As Byte) As Long
Public Declare Function RF_SetTransMode Lib "SCReader.dll" (ByVal hPort As Long, ByVal bytIsoType As Byte, ByVal bytMode As Byte) As Long
Public Declare Function RF_SetPcdTmo Lib "SCReader.dll" (ByVal hPort As Long, ByVal bytFWI As Byte) As Long
'ISO14443-TypeA
Public Declare Function TA_Request Lib "SCReader.dll" (ByVal hPort As Long, ByVal bytMode As Byte, pTagType As Byte) As Long
Public Declare Function TA_CascAnticoll Lib "SCReader.dll" (ByVal hPort As Long, ByVal argSelectCode As Byte, ByVal bytCnt As Byte, pSnr As Byte) As Long
Public Declare Function TA_CascSelect Lib "SCReader.dll" (ByVal hPort As Long, ByVal argSelectCode As Byte, pSnr As Byte, pSize As Byte) As Long
Public Declare Function TA_Halt Lib "SCReader.dll" (ByVal hPort As Long) As Long
'Mifare1读写函数
Public Declare Function MF_Request Lib "SCReader.dll" (ByVal hPort As Long, ByVal bytMode As Byte, pTagType As Byte) As Long
Public Declare Function MF_Anticoll Lib "SCReader.dll" (ByVal hPort As Long, ByVal bytCnt As Byte, pSnr As Byte) As Long
Public Declare Function MF_Select Lib "SCReader.dll" (ByVal hPort As Long, pSnr As Byte, pSak As Byte) As Long
Public Declare Function MF_AuthKey Lib "SCReader.dll" (ByVal hPort As Long, ByVal bytMode As Byte, pSnr As Byte, pKey As Byte, ByVal argBlock As Byte) As Long
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?