<Script RunAt="Server" Language="VBScript">
'==========================================================================
'名称:校验码
'功能:生成校验码类
'运行环境:ASP
'作者:jimzhu 请保留
'版本:2.0
'日期:2004-12-08
'==========================================================================
Dim IdentifyNum
Dim IdentifyDigtal
Const IdentifyLength = 5 '自定计数器长度
Randomize
IdentifyNum = Int( 10^IdentifyLength * Rnd)
IdentifyDigtal = ""
'补0
IdentifyDigtal = IdentifyDigtal & String(IdentifyLength-Len(IdentifyNum ), "0")
IdentifyDigtal = IdentifyDigtal & CStr(IdentifyNum)
Response.Cookies("IdentifyNum")=IdentifyDigtal
Call DigitalImage(IdentifyDigtal)
Sub DigitalImage(sDigital)
Const ImageHeight=10
Dim a(9,10)
a(0,1) = "3c" '数字0
a(0,2) = "66"
a(0,3) = "c3"
a(0,4) = "c3"
a(0,5) = "c3"
a(0,6) = "c3"
a(0,7) = "c3"
a(0,8) = "c3"
a(0,9) = "66"
a(0,10)= "3c"
a(1,1) = "18" '数字1
a(1,2) = "1c"
a(1,3) = "18"
a(1,4) = "18"
a(1,5) = "18"
a(1,6) = "18"
a(1,7) = "18"
a(1,8) = "18"
a(1,9) = "18"
a(1,10)= "7e"
a(2,1) = "3c" '数字2
a(2,2) = "66"
a(2,3) = "60"
a(2,4) = "60"
a(2,5) = "30"
a(2,6) = "18"
a(2,7) = "0c"
a(2,8) = "06"
a(2,9) = "06"
a(2,10)= "7e"
a(3,1) = "3c" '数字3
a(3,2) = "66"
a(3,3) = "c0"
a(3,4) = "60"
a(3,5) = "1c"
a(3,6) = "60"
a(3,7) = "c0"
a(3,8) = "c0"
a(3,9) = "66"
a(3,10)= "38"
a(4,1) = "38" '数字4
a(4,2) = "3c"
a(4,3) = "36"
a(4,4) = "33"
a(4,5) = "33"
a(4,6) = "33"
a(4,7) = "ff"
a(4,8) = "30"
a(4,9) = "30"
a(4,10)= "fe"
a(5,1) = "fe" '数字5
a(5,2) = "fe"
a(5,3) = "06"
a(5,4) = "06"
a(5,5) = "3e"
a(5,6) = "60"
a(5,7) = "c0"
a(5,8) = "c3"
a(5,9) = "66"
a(5,10)= "3c"
a(6,1) = "60" '数字6
a(6,2) = "30"
a(6,3) = "18"
a(6,4) = "0c"
a(6,5) = "3e"
a(6,6) = "63"
a(6,7) = "c3"
a(6,8) = "c3"
a(6,9) = "66"
a(6,10) ="3c"
a(7,1) = "ff" '数字7
a(7,2) = "c0"
a(7,3) = "60"
a(7,4) = "30"
a(7,5) = "18"
a(7,6) = "18"
a(7,7) = "18"
a(7,8) = "18"
a(7,9) = "18"
a(7,10)= "18"
a(8,1) = "3c" '数字8
a(8,2) = "66"
a(8,3) = "c3"
a(8,4) = "66"
a(8,5) = "3c"
a(8,6) = "66"
a(8,7) = "c3"
a(8,8) = "c3"
a(8,9) = "66"
a(8,10)= "3c"
a(9,1) = "3c" '数字9
a(9,2) = "66"
a(9,3) = "c3"
a(9,4) = "c3"
a(9,5) = "66"
a(9,6) = "3c"
a(9,7) = "18"
a(9,8) = "0c"
a(9,9) = "06"
a(9,10)= "03"
' Response.ContentType="image/x-xbitmap"
' Response.Expires=-1
Dim intLenDigital
Dim strImage,arrDigital
intLenDigital=Len(sDigital)
ReDim arrDigital(intLenDigital)
Dim i,j
For I = 1 To intLenDigital
arrDigital(I) = CByte(Mid(sDigital,I,1))
Next
Response.Write "#define counter_width " & 8*intLenDigital & vbCrLf '图像的宽度
Response.Write "#define counter_height " & ImageHeight & vbCrLf '图像的高度,在本例中为固定值
Response.Write "static unsigned char counter_bits[]={" & vbCrLf
For I = 1 To ImageHeight
For J = 1 To intLenDigital
strImage = strImage & a(arrDigital(J),I) & ","
Next
Next
strImage = Left(strImage,Len(strImage)-1) '去掉最后一个逗号
Response.Write strImage & "};"
Erase a
End Sub
</SCRIPT>