首页 > 其他分享 >VFP读写MifareOne IC卡 M1卡

VFP读写MifareOne IC卡 M1卡

时间:2023-01-07 18:39:58浏览次数:50  
标签:MifareOne IC卡 mypiccserial chr EN M1 && integer 255


本示例使用读写器介绍:Android Linux RFID读写器NFC发卡器WEB可编程NDEF文本/智能海报

VFP读写MifareOne IC卡 M1卡_VFP IC

 声明函数:

declare integer pcdbeep in OUR_MIFARE.dll integer xms
declare integer pcdgetdevicenumber in OUR_MIFARE.dll string @pdevicenumber
declare integer piccreadex in OUR_MIFARE.dll integer ctrlword,string @mypiccserial,integer myareano,integer authmode,string @mypicckey,string @mypiccdata
declare integer piccwriteex in OUR_MIFARE.dll integer ctrlword,string @mypiccserial,integer myareano,integer authmode,string @mypicckey,string @mypiccdata
declare integer piccchangesinglekey in OUR_MIFARE.dll integer ctrlword,string @mypiccserial,integer myareano,integer authmode,string @mypiccoldkey,string @mypiccnewkey

 轻松读卡:

BLOCK0_EN = 1    &&读块0
BLOCK1_EN = 2 &&读块1
BLOCK2_EN = 4 &&读块2
NEEDSERIAL = 8 &&是否需要只对指定系列号的卡操作
EXTERNKEY =16 &&是否使用外部密码
NEEDHALT = 32 &&是否休眠本卡

myctrlword=BLOCK0_EN + BLOCK1_EN + BLOCK2_EN + EXTERNKEY &&23
mypiccserial=space(4) && 声明4个字节存放卡号
myareano=8 && 读卡的扇区号
authmode=1 && 1表示认证A密码 0表示认证B密码
mypicckey=chr(255)+chr(255)+chr(255)+chr(255)+chr(255)+chr(255) &&卡片认证密码
mypiccdata=space(48) && 声明48个字节存放读卡数据
ans= piccreadex(myctrlword,@mypiccserial,myareano,authmode,@mypicckey,@mypiccdata)
if ans=0
aa=ASC(SUBSTR(mypiccserial,1,1))*256*256*256+ASC(SUBSTR(mypiccserial,2,1))*256*256+ASC(SUBSTR(mypiccserial,3,1))*256+ASC(SUBSTR(mypiccserial,4,1))
= MESSAGEBOX(' 操作成功! '+STR(aa),48,'提示:')
else
if ans=8
= MESSAGEBOX(' 请将卡放在感应区! ',48,'提示:')
ENDIF
if ans=12
aa=ASC(SUBSTR(mypiccserial,1,1))*256*256*256+ASC(SUBSTR(mypiccserial,2,1))*256*256+ASC(SUBSTR(mypiccserial,3,1))*256+ASC(SUBSTR(mypiccserial,4,1))
= MESSAGEBOX(' 密码认证失败! '+STR(aa),48,'提示:')
endif
endif

 轻松写卡:

BLOCK0_EN = 1    &&读块0
BLOCK1_EN = 2 &&读块1
BLOCK2_EN = 4 &&读块2
NEEDSERIAL = 8 &&是否需要只对指定系列号的卡操作
EXTERNKEY =16 &&是否使用外部密码
NEEDHALT = 32 &&是否休眠本卡

myctrlword=BLOCK0_EN + BLOCK1_EN + BLOCK2_EN + EXTERNKEY &&23
mypiccserial=space(4) && 声明4个字节存放卡号
myareano=8 && 写卡的扇区号
authmode=1 && 1表示认证A密码 0表示认证B密码
mypicckey=chr(255)+chr(255)+chr(255)+chr(255)+chr(255)+chr(255) &&卡片认证密码
mypiccdata=''
for i=1 to 48 &&写卡信息,每次写一个扇区共计48个字节
mypiccdata=mypiccdata+chr(255)
next i
ans= piccwriteex(myctrlword,@mypiccserial,myareano,authmode,@mypicckey,@mypiccdata)
if ans=0
= MESSAGEBOX(' 操作成功! ',48,'提示:')
else
if ans=8
= MESSAGEBOX(' 请将卡放在感应区! ',48,'提示:')
endif
endif

修改卡片密码:

myctrlword=0
mypiccserial=space(4)
myareano=8
authmode=1
mypiccoldkey=''

for i=1 to 6
mypiccoldkey=mypiccoldkey+chr(255)
next i

mypiccnewkey=''
for i=1 to 6
mypiccnewkey=mypiccnewkey+chr(255)
next i

ans=piccchangesinglekey(myctrlword,@mypiccserial,myareano,authmode,@mypiccoldkey,@mypiccnewkey)

if ans=0
= MESSAGEBOX(' 操作成功! ',48,'提示:')
else
if ans=8
= MESSAGEBOX(' 请将卡放在感应区! ',48,'提示:')
endif
endif


标签:MifareOne,IC卡,mypiccserial,chr,EN,M1,&&,integer,255
From: https://blog.51cto.com/RongShi/5995682

相关文章

  • AnolisOS-8.6安装EM13C&Agent部署&EM常用命令&集群数据库添加
    系统:AnolisOS8.6数据库:Oracle19.16说明:此安装文档选择的是AdvancedInstallaioin,内存要求10G.安装EM前需了解相关参数要求.1、安装数据库1.1、去除虚拟嵌套虚拟机功能yum......
  • flutter-macos(M1)开发环境搭建
    文章目录​​flutter-macos(M1)开发环境搭建​​​​1.下载fluttersdk​​​​2.解压缩​​​​3.配置环境变量​​​​4.检查​​​​5.其他配置​​​​5.1gradle​​......
  • docker 在Mac的M1芯片下,有的不成功的解决
    version:'3.7'services:prometheus:container_name:"prometheus"restart:alwaysimage:prom/prometheusdeploy:resources:......
  • 记 对接拼多多官方代报 辽宁电子口岸联达通客户端 ic卡加签版
    对接前准备详见pdd文档https://open.pinduoduo.com/application/document/browse?idStr=EE386BF9BCC6EEC1总结需要我们做的有1 实现我们持有ic卡机器上的加签接口功能......
  • MacOS M1 安装 Thrift
    直接brewinstall一把梭即可。不要尝试自己编译安装,坑太多了,参考这个吧:https://juejin.cn/post/7100411071223037959其他用法参考:https://cui1994.github.io/2019/0......
  • MacBook m1 16g+1t使用体验
    入手这台mac快两个月了,是时候总结一下了拿到它的那一刻,我真的快激动疯了,好久没有那么激动的时刻,我轻轻抚摸,虽然是二手的电脑,但是它的身上依旧有一股电子产品特有的......
  • 旧酒换新瓶,新版M1/M2芯片Macos(Ventura)安装古早版本Python2.7(Python2.x)
    向下兼容特性是软件开发系统的一个重要指标,它是指一个新的系统或者软件能够与旧的系统或软件兼容并正常运行。这意味着旧系统或软件可以在新系统或软件中使用,而不会出现问......
  • 苹果M1 Mac电脑怎么关闭SIP?
    如果你要重装苹果的系统的话,就需要关闭一个叫SIP的东西,那么很多人会问这个要怎么才能关闭呢?苹果M1Mac电脑为了系统环境安全,再核心下引入了SIP(SystemIntegrityProtection......
  • DB2 LUW. 11.5.xx - Mac M1 ready
    DB2LUW.11.5.xx-MacM1ready https://community.ibm.com/community/user/hybriddatamanagement/discussion/db2-luw-115xx-mac-m1-readyJür......
  • BM18 二维数组中的查找
    题目描述给定一个每个元素都是升序数组的二维数组和一个target,判断target是否在数组中返回boolean类型思路分析方法一:遍历每个元素,判断是否相等方法二:将数组拍平,也......