永发信息网

asp仿discuz论坛验证码

答案:1  悬赏:20  手机版
解决时间 2021-07-26 01:42

这个验证码程序下载来就不能显示.我用的IE6

请问这个是IIS哪里要设置权限吗?

C盘是NFTS格式的

源码

<%
' 仿discuz论坛验证码
' version 1.0
' http://www.mysuc.com/
' Copyright (C) 2009 by hayden

' 明确变量申明
Option Explicit

' 此处设置置会话超时为3分钟
Session.Timeout = 3

' 随机运行,以确保一个随机号码检索
Randomize

' 声明变量
Dim jpeg
Dim pixelsAcross,textColour,CodeTotal
Dim sessionnaem
Dim randomNumber : randomNumber = Int(Rnd * 7)+1

' 验证码全局变量名称设定
sessionnaem = "GetCode"

' 验证码个数
CodeTotal = 4

' 文字颜色
textColour = randomFomtcolor(randomNumber)

' 验证码缩进距离
pixelsAcross = Int(Rnd * 40)+3

' 创建一个jpeg对象
Set jpeg = Server.CreateObject("Persits.jpeg")

' 打开随机背景图片
drawBackGroud randomNumber,200,60

' 绘制字符
doString

' 随机线
drawLines

' 随机圆
drawCircle

' 随机矩形
'drawBar

' 返回的二进制,申明本页为一个JPEG图片类型
jpeg.SendBinary
Set jpeg = Nothing


' 函数(drawBackGroud):打开背景图片
Function drawBackGroud(srandom,swidth,sheight)
Jpeg.Open Server.MapPath("background/background"&srandom&".jpg")
Jpeg.Width = swidth
Jpeg.Height = sheight
End Function

' 函数(drawLines):绘制随机线
Sub drawLines
jpeg.Canvas.Pen.Color = &HADCD3C
jpeg.Canvas.DrawLine 0, Int(Rnd * jpeg.Height), jpeg.Width, Int(Rnd * jpeg.Height)
End Sub

' 函数(drawBar):绘制随机矩形框
Sub drawBar
jpeg.Canvas.Brush.Solid = False '填充
'矩形边框颜色
jpeg.Canvas.Pen.Color = &H9CCF00
'绘制矩形框
jpeg.Canvas.Bar Int(Rnd * jpeg.Width), Int(Rnd * jpeg.Height), Int(Rnd * 50)+20,Int(Rnd * 50)+20
End Sub

' 函数(drawCircle):绘制随机圆
Sub drawCircle
jpeg.Canvas.Brush.Solid = False '填充
jpeg.Canvas.Pen.Color = &H8080FF
jpeg.Canvas.Circle Int(Rnd * jpeg.Width), Int(Rnd * jpeg.Height), Int(Rnd * 10)+5
jpeg.Canvas.Pen.Color = &HEEEEEE
jpeg.Canvas.Circle Int(Rnd * jpeg.Width), Int(Rnd * jpeg.Height), Int(Rnd * 10)+10
End Sub

' 函数(doString):绘制验证码字符
Sub doString
Dim theString
Dim x

' 获取坠机字符串
theString = createRandomString()

' 循环通过字符串的每个字符
For x = 1 to len(theString)

' 在验证码图片当前位置打印字符
addLetter Mid(theString, x, 1)

Next

End Sub

' 函数(addLetter)在验证码图片当前位置打印字符
Sub addLetter(theLetter)

' 字体的颜色
jpeg.Canvas.Font.Color = textColour

' 字体阴影
jpeg.Canvas.Font.ShadowColor = &HFFFFFF

' 是否为粗体 此处个人感觉加粗效果更好,故不做随机判断,而是直接设定加粗
'if doTextStyle then
jpeg.Canvas.Font.Bold = True
'End If

' 是否增加下划线 此处个人感觉很丑,注释掉!
'if doTextStyle then
' jpeg.Canvas.Font.Underlined = True
'End If

' 是否为斜体
if doTextStyle then
jpeg.Canvas.Font.Italic = True
End If

' 字体
jpeg.Canvas.Font.Family = "Arial Black"'randomFont()

' 字体大小
jpeg.Canvas.Font.Size = randomFontSize()

' 文字清晰度
jpeg.Canvas.Font.Quality = 4

' 背景色 当前使用了背景图,故此处注释掉
'jpeg.Canvas.Font.BkColor = backColour

' 字体背景模式(处理平滑)
jpeg.Canvas.Font.BkMode = "transparent"

' 绘制字符
jpeg.canvas.print pixelsAcross, Int(Rnd * 5), theLetter

' 字符宽度
pixelsAcross = pixelsAcross + Int(Rnd * 10)+30

End Sub

' 返回随机真假值各机率为50%
Function doTextStyle()
if Rnd() > 0.5 then
doTextStyle = true
else
doTextStyle = false
end if
End Function

' 返回验证码中各字符的随机大小
Function randomFontSize()
Dim theNumber
' 获取一个随机大小,范围(40-60)
theNumber = Int(Rnd * 20) + 40
randomFontSize = theNumber

End Function

' 返回随机验证码文字颜色
Function randomFomtcolor(srandomm)
Dim arrFomtcolor(8)
arrFomtcolor(1) = &HBDE3FF
arrFomtcolor(2) = &HD68618
arrFomtcolor(3) = &H086529
arrFomtcolor(4) = &H637594
arrFomtcolor(5) = &Hffffff
arrFomtcolor(6) = &HBDDBF7
arrFomtcolor(7) = &H08756B
arrFomtcolor(8) = &H295131
randomFomtcolor = arrFomtcolor(srandomm)
End Function

' 返回随机字体
Function randomFont()
Dim theNumber
Dim font
' 取得1-6区间内一随机字符
theNumber = Int(Rnd * 5) + 1
' 随机字体
if theNumber =1 then
font = "Arial Black"
elseif theNumber =2 then
font = "Courier New"
elseif theNumber =3 then
font = "Helvetica"
elseif theNumber =4 then
font = "Times New Roman"
elseif theNumber =5 then
font = "Verdana"
else
font = "Geneva"
end If
randomFont = font

End Function

' 返回随机验证证字符串
Function createRandomString
Dim outputString
Dim x
For x = 0 To CodeTotal-1
' 英文字符出现机率60%, 数字出现机率40%
if rnd() < 0.6 then
' 返回一个随机英文字符
outputString = outputString & Chr(Int((26 * rnd()) + 65))
else
' 返回一个随机数字
outputString = outputString & Chr(Int((10 * rnd()) + 48))
end if
Next
Session(sessionnaem) = outputString
createRandomString = outputString
End Function
%>

最佳答案

服务器需要安装JPEG组件


最新更新ASP Jpeg 下载地址: http://www.oioj.net/down/AspJpegv1.5.0.0.rar



ASP图片处理,JPEG组件使用方法,自动生成缩略图,给图片打水印,安全码,图片切割 代码


http://hi.baidu.com/happyyutian/blog/item/15d4f7552231e0ccb645ae73.html

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
qq华夏我怎么买了个7+7的戒子不见了
用vc6时显示 执行link.exe时出错、该怎么解决
生日礼物,自己动手做,什么最能代表心意?
企业管理团队介绍,如何建立一个创业团队,包
哪个牌子的护肤品 保湿效果比较好
为什么我以前的的QQ华夏账号没有了?
"痛乎无盐女君之言,吾今乃一闻寡人之殆,寡
请问恭亲王与道光帝,咸丰帝,同治帝,光绪帝,他
退学行吗…偶的神呀…学不懂…
Dreamweaver MX最新版是什麼?
工业设计面试自我介绍,求一份面试自我介绍,3
有没有好一点的游戏啊!麻烦告诉个
CF现在有4.3的体验服了吗?
猜字谜仔细开动脑筋吧!!!
DNF PK场遇见CD哥哥应该怎么打?
推荐资讯
语音不好使怎么办?
怎么能不用花钱就把空间弄得特好看…
改网名是因为什么呢?
感情问题,请大家帮帮我…
知道选秀节目速度回答下
DNF弹出这个东西。更新不了游戏要怎么解决
上海市闵行区各高中的录取分数线
gba游戏王8决斗者等级
如何取消QQ自动弹出新闻
一辆公共汽车从车站开出,以8m/s的速度沿平直
是不是脚暖和了手也就暖和了
英文【天空憔悴】咋说
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?