网页例程,读卡器测试网页例程

 

 

 

 

详细代码如下:(如有疑问可13826029618进行相关了解咨询。也可以直接进入---www.icmcu.com--下载源代码压缩包)

 

 

<html>
<head>
    <meta http-equiv="Content-Language" content="zh-cn">
    <meta name="GENERATOR" content="Microsoft FrontPage 6.0">
    <meta name="ProgId" content="FrontPage.Editor.Document">
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>USB IC 卡读卡器控件调用例程 V1.0 -- 广州荣士电子</title>

    <script id="clientEventHandlersVBS" language="vbscript">
<!--
'控制字定义,控制字指定,控制字的含义请查看本公司网站提供的动态库说明
Const BLOCK0_EN = &H1'读第一块的(16个字节)
Const BLOCK1_EN = &H2'读第二块的(16个字节)
Const BLOCK2_EN = &H4'读第四块的(16个字节)
Const NEEDSERIAL = &H8'仅读指定序列号的卡
Const EXTERNKEY = &H10'用明码认证密码,产品开发完成后,建议把密码放到设备的只写区,然后用该区的密码后台认证,这样谁都不知道密码是多少,需要这方面支持请联系
Const NEEDHALT = &H20'读/写完卡后立即休眠该卡,相当于这张卡不在感应区。要相重新操作该卡必要拿开卡再放上去

dim myctrlword
dim mypiccserial
dim myareano
dim authmode
dim mypicckey
dim piccdata0_2

dim retval

dim strls
dim errorno
strls = "adsgdss"


Sub readcard_onclick
 '指定控制字
 myctrlword=BLOCK0_EN + BLOCK1_EN + BLOCK2_EN + EXTERNKEY
 '指定区号
 myareano = 8 '指定为第8区
 '批定密码模式
 authmode = 1 '大于0表示用A密码认证,推荐用A密码认证
 
 '指定序列号,未知卡序列号时可指定为8个0
 mypiccserial="00000000"

 
 '指定密码,以下密码为厂家出厂密码
 mypicckey = "ffffffffffff"
 
 strls=IcCardReader.piccreadex(myctrlword, mypiccserial,myareano,authmode,mypicckey)
 errorno = mid(strls,1,4)
 select case  errorno
  case "ER08"
   msgbox "寻不到卡"
  case "ER09"
   msgbox "寻不到卡"
  case "ER10"
   msgbox "寻不到卡"
  case "ER11"
   CardIDShower.value = "密码认证错误" & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & strls & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "其中错误号为:" & errorno & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "卡十六进制序列号为:" & mid(strls,6,8) & Chr(13) & Chr(10)
   msgbox "密码认证错误"
  case "ER12"
   CardIDShower.value = "密码认证错误" & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & strls & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "其中错误号为:" & errorno & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "卡十六进制序列号为:" & mid(strls,6,8) & Chr(13) & Chr(10)
   msgbox "密码认证错误"
  case "ER13"
   CardIDShower.value = "读卡错误" & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & strls & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "其中错误号为:" & errorno & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "卡十六进制序列号为:" & mid(strls,6,8) & Chr(13) & Chr(10)
   msgbox "读卡错误" 
   
  case "ER14"
   CardIDShower.value = "写卡错误" & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & strls & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "其中错误号为:" & errorno & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "卡十六进制序列号为:" & mid(strls,6,8) & Chr(13) & Chr(10)
   msgbox "写卡错误" 
   
  case "ER21"
   msgbox "没找到动态库" 
   
  case "ER22"
   msgbox "动态库或驱动程序异常" 
  
  case "ER23"
   msgbox "读卡器未插上或动态库或驱动程序异常" 
  case "ER24"
   msgbox "操作超时,一般是动态库没有反应" 
  case "ER25"
   msgbox "发送字数不够" 
  case "ER26"
   msgbox "发送的CRC错" 
  case "ER27"
   msgbox "接收的字数不够" 
  case "ER28"
   msgbox "接收的CRC错"
  case "ER29"
   msgbox "函数输入参数格式错误,请仔细查看" 
  case else'读卡成功,其中ER00表示完全成功,ER01表示完全没读到卡数据,ER02表示仅读该卡的第一块成功,,ER02表示仅读该卡的第一二块成功,这是刷卡太快原因
   CardIDShower.value = "读卡成功" & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & strls & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "其中错误号为:" & errorno & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "卡十六进制序列号为:" & mid(strls,6,8) & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "该区第一块十六进制数据为:" & mid(strls,15,32) & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "该区第二块十六进制数据为:" & mid(strls,47,32) & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "该区第三块十六进制数据为:" & mid(strls,79,32) & Chr(13) & Chr(10)
 
 end select
End Sub

Sub writecard_onclick
 '指定控制字
 myctrlword=BLOCK0_EN + BLOCK1_EN + BLOCK2_EN + EXTERNKEY
 '指定区号
 myareano = 8 '指定为第8区
 '批定密码模式
 authmode = 1 '大于0表示用A密码认证,推荐用A密码认证
 
 '指定序列号,未知卡序列号时可指定为8个0
 mypiccserial="00000000"

 
 '指定密码,以下密码为厂家出厂密码
 mypicckey = "ffffffffffff"

 
 '指定写卡内容,长度为48个字节,其中每个字节以两个字符表示为十六进制数
 piccdata0_2 = "000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F"
 strls=IcCardReader.piccwriteex(myctrlword, mypiccserial,myareano,authmode,mypicckey,piccdata0_2)
 errorno = mid(strls,1,4)
 select case  errorno
  case "ER08"
   msgbox "寻不到卡"
  case "ER09"
   msgbox "寻不到卡"
  case "ER10"
   msgbox "寻不到卡"
  case "ER11"
   CardIDShower.value = "密码认证错误" & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & strls & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "其中错误号为:" & errorno & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "卡十六进制序列号为:" & mid(strls,6,8) & Chr(13) & Chr(10)
   msgbox "密码认证错误"
  case "ER12"
   CardIDShower.value = "密码认证错误" & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & strls & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "其中错误号为:" & errorno & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "卡十六进制序列号为:" & mid(strls,6,8) & Chr(13) & Chr(10)
   msgbox "密码认证错误"
  case "ER13"
   CardIDShower.value = "读卡错误" & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & strls & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "其中错误号为:" & errorno & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "卡十六进制序列号为:" & mid(strls,6,8) & Chr(13) & Chr(10)
   msgbox "读卡错误" 
   
  case "ER14"
   CardIDShower.value = "写卡错误" & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & strls & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "其中错误号为:" & errorno & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "卡十六进制序列号为:" & mid(strls,6,8) & Chr(13) & Chr(10)
   msgbox "写卡错误" 
   
  case "ER21"
   msgbox "没找到动态库" 
   
  case "ER22"
   msgbox "动态库或驱动程序异常" 
  
  case "ER23"
   msgbox "读卡器未插上或动态库或驱动程序异常" 
  case "ER24"
   msgbox "操作超时,一般是动态库没有反应" 
  case "ER25"
   msgbox "发送字数不够" 
  case "ER26"
   msgbox "发送的CRC错" 
  case "ER27"
   msgbox "接收的字数不够" 
  case "ER28"
   msgbox "接收的CRC错"
  case "ER29"
   msgbox "函数输入参数格式错误,请仔细查看" 
  case else'写卡成功,其中ER00表示完全成功,ER01表示完全没写到卡数据,ER02表示仅写该卡的第一块成功,,ER02表示仅写该卡的第一二块成功,这是刷卡太快原因
   CardIDShower.value = "写卡成功" & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & strls & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "其中错误号为:" & errorno & Chr(13) & Chr(10)
   CardIDShower.value = CardIDShower.value & "卡十六进制序列号为:" & mid(strls,6,8) & Chr(13) & Chr(10)
 
 end select
End Sub

Sub beep_onclick
 IcCardReader.pcdbeep 100'台数100表示响100毫秒
 
End Sub

Sub clears1_onclick
 CardIDShower.value = ""
End Sub

 

-->
    </script>

</head>
<body>
<object classid="clsid:05782014-9FF7-468C-BE96-8EDC73084202" id="IcCardReader" viewastext
        width="0" height="0">
    </object>
   

    <table border="0" style="border-collapse: collapse" width="549" height="300">
        <tr>
            <td width="160" rowspan="5">
                <textarea rows="22" cols="118" id="CardIDShower" name="S1">

</textarea>
            </td>
        </tr>
        <tr>
            <td width="160">
                <input type="button" value=" 读 卡 " id="readcard">
            </td>
        </tr>
        <tr>
            <td width="160">
                <input type="button" value=" 写 卡 " id="writecard">
            </td>
        </tr>
        <tr>
            <td width="160">
                <input type="button" value="蜂鸣器响" id="beep">
            </td>
        </tr>
        <tr>
            <td width="160">
                <input type="button" value="清空提示" id="clears1">
            </td>
        </tr>
    </table>
    <p>
        <font style="font-size: 9pt">提示:</font></p>
    <p>
        <font style="font-size: 9pt">&nbsp;&nbsp;&nbsp; 运行本例程前,需先注册 IcCardReader 控件,注册方法为:“开始”-&gt;“运行”-&gt;输入“regsvr32
            ***/IcCardReader.ocx”-&gt;“确定”。其中“***”为控件所在路径。</font></p>
    <p>
        <font style="font-size: 9pt">&nbsp;&nbsp;&nbsp; 需让浏览器允许运行 ActiveX 控件。</font></p>
</body>
</html>

 

 

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值