📄 readme.txt
字号:
'cntState为连接状态量,True为PC与读卡器处于连接状态,False为断开状态
Dim cntStatus As Boolean
'激活卡
Private Sub activeCard_Click()
status = RFMifare_Select(cdsnr)
ListBox.AddItem " "
If status = 0 Then
ListBox.AddItem "卡片激活成功!"
Else
ListBox.AddItem "卡片激活失败!"
End If
End Sub
'呼叫卡按钮
Private Sub callCard_Click()
callMode.Show 1
If ans = 0 Then
ListBox.AddItem "请重新输入命令!"
Exit Sub
End If
If ycallmode = 2 Then
ListBox.Clear
ListBox.AddItem "呼叫操作取消!"
Exit Sub
End If
status = RFMifare_Request(ycallmode, cdtype)
ListBox.Clear
ListBox.AddItem " "
If status = 0 Then
If cdtype = 4 Then
ListBox.AddItem "呼叫成功!"
End If
Else
ListBox.AddItem "呼叫失败!"
End If
End Sub
'清屏按钮
Private Sub ClearScreen_Click()
'MousePointer = 99
ListBox.Clear
'MousePointer = 0
End Sub
'连接按钮
Private Sub Cnt_Click()
Dim Port As Long
Dim mcmno As Long
statue = AutoLinkCom(Port)
ListBox.AddItem " "
If statue = 0 Then
status = RFMifare_Mcmno(mcmno)
If mcmno = 17 Then
ListBox.AddItem "连接成功!"
'driver.enable = True
'连接成功,按钮可用
Cnt.Enabled = False
ReadVer.Enabled = True
Discnt.Enabled = True
ClearScreen.Enabled = True
Discnt.Enabled = True
LightCtl.Enabled = True
callCard.Enabled = True
readCardNo.Enabled = True
activeCard.Enabled = True
downloadPwd.Enabled = True
pwdAuth.Enabled = True
readData.Enabled = True
writeData.Enabled = True
cntStatus = True
Else
ListBox.AddItem "请重新连接!"
End If
Else
ListBox.AddItem "通信口连接失败!"
End If
If cntStatus = True Then
cntlabel.Caption = "连接状态:连接"
Else
cntlabel.Caption = "连接状态:断开"
End If
End Sub
'断开连接按钮
Private Sub Discnt_Click()
status = UnLinkCom()
If status = 0 Then
ListBox.Clear
ListBox.AddItem " "
ListBox.AddItem "断开连接成功!"
Cnt.Enabled = True
ReadVer.Enabled = False
Discnt.Enabled = False
ClearScreen.Enabled = False
Discnt.Enabled = False
LightCtl.Enabled = False
callCard.Enabled = False
readCardNo.Enabled = False
activeCard.Enabled = False
downloadPwd.Enabled = False
pwdAuth.Enabled = False
readData.Enabled = False
writeData.Enabled = False
cntStatus = False
Else
ListBox.Clear
ListBox.AddItem " "
ListBox.AddItem "断开连接失败!"
End If
If cntStatus = True Then
cntlabel.Caption = "连接状态:连接"
Else
cntlabel.Caption = "连接状态:断开"
End If
End Sub
'下载密码
Private Sub downloadPwd_Click()
Dim Ymima(6) As Byte
Dim mode As Long
If cdtype = 4 Then
mimaflag = 1
mima.Show 1
If ans = 0 Then
ListBox.AddItem "请重新输入命令!"
Exit Sub
End If
cdpage = datasector
mode = mimanum * 4
For i = 0 To 5
Ymima(i) = Val("&h" + Mid(Trim(mimacode), i * 2 + 1, 2))
Next i
status = RFMifare_LoadKey(mode, cdpage, Ymima(0))
ListBox.Clear
ListBox.AddItem " "
If status = 0 Then
ListBox.AddItem "密码传送成功!"
ListBox.AddItem ""
Else
ListBox.AddItem "密码传送失败!"
End If
End If
End Sub
'退出按钮
Private Sub Exit_Click()
'在程序退出之前,先检查PC是否已和读卡器断开
If cntStatus = True Then
MsgBox "仍然处于与读卡设备连接状态中,请先断开与读卡设备的连接!"
Else
End
End If
End Sub
'窗体加载
Private Sub Form_Load()
cntStatus = False
Cnt.Enabled = True
'按钮初始化为不可用
LightCtl.Enabled = False
ReadVer.Enabled = False
Discnt.Enabled = False
ClearScreen.Enabled = False
callCard.Enabled = False
readCardNo.Enabled = False
activeCard.Enabled = False
downloadPwd.Enabled = False
pwdAuth.Enabled = False
readData.Enabled = False
writeData.Enabled = False
cntlabel.Caption = "连接状态:断开"
End Sub
'灯控按钮
Private Sub LightCtl_Click()
Dim mode As Long
Dim actiontime As Long
Dim intervaltime As Long
Dim count As Long
mode = 7
actiontime = 30
intervaltime = 30
count = 3
status = ALARM(mode, actiontime, intervaltime, count)
If status = 0 Then
ListBox.Clear
ListBox.AddItem " "
ListBox.AddItem "读控制软件版本号成功!"
Else
ListBox.AddItem " "
ListBox.AddItem "读控制软件版本号失败!"
End If
End Sub
'密码认证
Private Sub pwdAuth_Click()
Dim mode As Long
Dim sector As Long
Dim blockno As Long
mimaflag = 0
If cdtype = 4 Then
mimaflag = 0
mima.Show 1
If ans = 0 Then
ListBox.AddItem "请重新输入命令!"
Exit Sub
End If
cdpage = datasector
mode = mimanum * 4
If mimanum = 2 Then
ListBox.Clear
ListBox.AddItem "密码输入错误!"
Exit Sub
End If
blockno = (datasector + 1) * 4 - 1
status = RFMifare_Authentication(mode, cdpage, blockno)
Else
mimaflag = 1
'ML10MIMA.show1
If ans = 0 Then
ListBox.AddItem "请重新输入命令!"
Exit Sub
End If
mode = datasector
If mode = 0 Then
blockno = 6
Else
blockno = 8
End If
status = RFMifare_Authentication(mide, 0, blockno)
End If
ListBox.Clear
ListBox.AddItem " "
If status = 0 Then
ListBox.AddItem "密码认证通过!"
Else
ListBox.AddItem "密码认证未通过!"
End If
End Sub
'读卡号
Private Sub readCardNo_Click()
Dim temp As String
'Dim j As Integer
ListBox.Clear
ListBox.AddItem " "
status = RFMifare_AntiColl(cdsnr)
If status = 0 Then
ListBox.AddItem "卡片序列号读取成功!"
temp = "000000" + Hex(cdsnr)
CardNo.Text = Mid(temp, Len(temp) - 7, 8)
Else
ListBox.AddItem "序列号读取失败!"
CardNo.Text = ""
End If
End Sub
'读数据
Private Sub readData_Click()
If cdtype = 4 Then
readflag = 1
inputdata.Show 1
cdblock = datasector * 4 + datablock
Else
ListBox.AddItem "未知卡型!"
End If
If ans = 0 Then
ListBox.AddItem "请重新输入!"
Exit Sub
End If
status = RFMifare_Read(cdblock, ReadBuff(0))
ListBox.Clear
ListBox.AddItem " "
If status = 0 Then
ListBox.AddItem "读数据块成功!"
Dim atemp As String
Dim atemp1 As String
For i = 0 To 15
atemp1 = Mid("00" + Hex(ReadBuff(i)), Len("00" + Hex(ReadBuff(i))) - 1)
atemp = atemp + " " + atemp1
Next i
ListBox.AddItem atemp
Else
ListBox.AddItem "读数据失败!"
End If
End Sub
'版本读取按钮
Private Sub ReadVer_Click()
Dim mcmver(20) As Byte
Dim temp As String
Dim i As Byte
status = DEVVER(mcmver(0))
If status = 0 Then
ListBox.Clear
ListBox.AddItem " "
ListBox.AddItem "读控制软件版本号成功!"
temp = ""
For i = 0 To 7
temp = temp + Hex(mcmver(i))
Next
ListBox.AddItem temp
Else
ListBox.AddItem " "
ListBox.AddItem "读控制软件版本号失败!"
End If
End Sub
'写数据
Private Sub writeData_Click()
Dim mima(6) As Byte
Dim m1str As String * 32
readflag = 0
inputdata.Show 1
cdblock = datasector * 4 + datablock
If ans = 0 Then
ListBox.AddItem "请重新输入命令!"
Exit Sub
End If
For i = 0 To 15
ReadBuff(i) = Val("&h" + Mid(Trim(dataVal), i * 2, 2))
Next i
status = RFMifare_Write(cdblock, ReadBuff(0))
ListBox.Clear
ListBox.AddItem ""
If ans = 0 Then
ListBox.AddItem "数据写入成功!"
Else
ListBox.AddItem "数据写入失败!"
End If
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -