刷卡(读卡器)新手寻求帮助
有没有做过这方面的兄弟
我没有做过,读卡器在我的感觉无非是记录一个类似于id号的卡片,当你刷卡的时候得到他的卡号,然后访问数据库得到其相关信息,修改记录也是对数据库操作,只有在卡初始化的时候需要对卡进行写操作。我只是知道其原理,具体操作没有实践过,有做过的兄弟,帮帮忙,发过来一份,不胜感激。
问题点数:100、回复次数:8Top
1 楼cuilei197979(风)回复于 2006-03-12 14:37:51 得分 0
我的邮箱:cuilei@king-land.com.cnTop
2 楼cuilei197979(风)回复于 2006-03-12 14:38:03 得分 0
qq:47510241
Top
3 楼lsftest()回复于 2006-03-13 00:55:36 得分 20
你说的那种是最常见的,如果是这种基本上你连“只有在卡初始化的时候需要对卡进行写操作”的功夫也可以省了,因为这种卡一般出厂的时候id号已定,一般是不需要也很可能不能变的,用户只需要关心从读卡器传过来的id号就是了。。。
但另一些是把用户信息直接存在卡上的。。。不过成本一般比较高。。。。。Top
4 楼cuilei197979(风)回复于 2006-03-13 07:25:10 得分 0
那,怎么样才可以读到id那Top
5 楼of123()回复于 2006-03-13 08:29:10 得分 40
如果是你所说的只读卡,其读卡器会自动回送读到的 ID。
常用的接口方式有两种:
1 键盘口。与键盘上输入字符没有区别。你只要在 TextBox 的 Change 事件中处理输入内容就可以了。它一般是以 vbCrLf 结束一个 ID 串。
2 串口。用 MSComm 控件接收就可以。
如果是读写卡,一般通过调用读卡器厂商提供的 DLL 函数来处理。Top
6 楼cuilei197979(风)回复于 2006-03-13 08:36:03 得分 0
哦,我对mscomm不熟悉,你有没有做过的小例子,借我参考一下啊
Top
7 楼of123()回复于 2006-03-13 09:23:21 得分 40
Private Sub Form_Load ()
' 使用 COM1。
MSComm1.CommPort = 1
' 9600 波特,无奇偶校验,8 位数据,一个停止位。
MSComm1.Settings = "9600,N,8,1"
' 当输入占用时,
' 告诉控件读入整个缓冲区。
MSComm1.InputLen = 0
' 假定读卡器回传的 ID 是 4 字节二进制数(例如 Long 型)
MSComm1.InputMode = comInputModeBinary
' 当接收到 4 个字节时触发 comEvReceive 事件。
MSComm1.Rthreshold = 4
' 打开端口。
MSComm1.PortOpen = True
End Sub
Private Sub MSComm_OnComm ()
Dim Tmp
Dim a() As Byte
Dim i As Integer
If MSComm1.CommEvent = comEvReceive Then
Text1 = ""
Tmp = MSComm1.Input
a = Tmp
For i = Ubound(a)
Text1 = Text1 & Right("0" & Hex(a(i)), 2)
Next i
End If
End Sub
Private Sub Form_UnLoad ()
MSComm1.PortOpen = False
End Sub
Top
8 楼lsftest()回复于 2006-03-13 11:41:43 得分 0
留言收到。。。。。。
读取id号要依靠读卡器。。。
一般可以从读卡器厂商那里得到技术支持。。。。Top




