?? checkcode.asp
字號:
<%
Option Explicit
Const CodeType = 5 '注:1,4,7,10,13,16為黑白型 2,5,8,11,14,17為彩色背景型 3,6,9,12,15,18為噪點型
Const listcode = "0123456789abcdefghijklmnopqrstuvwxyz"
Response.buffer = True
Response.Expires = -1
Response.AddHeader "Pragma", "no-cache"
Response.AddHeader "cache-ctrol", "no-cache"
Dim zNum, rNum, i, j, listnum
Dim Ados, Ados1
'得到驗證碼的字符串
Dim zimg(6), NStr
Randomize Timer
For i = 0 To 5
rNum = Fix(35 * Rnd) '將35改為9即為使用純數字密碼
zimg(i) = rNum
listnum = listnum & Mid(listcode, rNum + 1, 1)
Next
Session("CheckCode") = listnum
'*********************
Dim Pos
Set Ados = Server.CreateObject("Adodb.Stream")
Ados.Mode = 3
Ados.Type = 1
Ados.Open
Set Ados1 = Server.CreateObject("Adodb.Stream")
Ados1.Mode = 3
Ados1.Type = 1
Ados1.Open
'得到驗證碼圖像實體部分
Ados.LoadFromFile Server.mappath("body" & CodeType & ".Fix")
Ados1.write Ados.Read(2880)
For i = 0 To 5
Ados.Position = (35 - zimg(i)) * 480
Ados1.Position = i * 480
Ados1.write Ados.Read(480)
Next
'得到圖像頭部信息
Ados.LoadFromFile Server.mappath("head.fix")
Pos = LenB(Ados.Read())
Ados.Position = Pos
'將頭部信息與實體部分合并成橫向排列
On Error Resume Next
For i = 0 To 15
For j = 0 To 5
Ados1.Position = i * 32 + j * 480
Ados.Position = Pos + 30 * j + i * 270
Ados.write Ados1.Read(30)
Next
Next
'輸出圖像
Ados.Position = 0
Response.ContentType = "image/BMP"
Response.BinaryWrite Ados.Read()
Ados.Close
Set Ados = Nothing
Ados1.Close
Set Ados1 = Nothing
%>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -