下面是Vb的 gif.aspx
----------------------------
<%@ import namespace="system"%>
<%@ import namespace="system.io"%>
<%@ import namespace="system.drawing"%>
<%@ import namespace="system.drawing.imaging"%>
<script language="vb" runat="server">
sub page_load(sender as object,e as eventargs)
'rndnum是一个自定义函数
dim vnum as string=rndnum(4)
session("vnum")=vnum
validatecode(vnum)
end sub
'生成图象验证码函数
sub validatecode(vnum)
dim img as system.drawing.bitmap
dim g as graphics
dim ms as memorystream
dim gheight as integer=int(len(vnum)*11.5)
'gheight为图片宽度,根据字符长度自动更改图片宽度
img=new bitmap(gheight,20)
g=graphics.fromimage(img)
g.drawstring(vnum,(new font("arial",10)),(new solidbrush(color.blue)),3,3)'在矩形内绘制字串(字串,字体,画笔颜色,左上x.左上y)
ms=new memorystream()
img.save(ms,imageformat.png)
response.clearcontent() '需要输出图象信息 要修改http头
response.contenttype="image/png"
response.binarywrite(ms.toarray())
g.dispose()
img.dispose()
response.end()
end sub
'--------------------------------------------
'函数名称:rndnum
'函数参数:vcodenum--设定返回随机字符串的位数
'函数功能:产生数字和字符混合的随机字符串
function rndnum(vcodenum)
dim vchar as string="0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,w,x,y,z"
dim vcarray() as string=split(vchar,",") '将字符串生成数组
dim vnum as string=""
dim i as byte
for i=1 to vcodenum
randomize
vnum=vnum & vcarray(int(35*rnd)) '数组一般从0开始读取,所以这里为35*rnd
next
return vnum
end function
</script>
<FONT face="宋体"></FONT>
----------------------------------------------
上面一个单独的页面,图片大小可以自己调
在你要用的页面里加入一个图片控件
<asp:image id="image1" runat="server" imageurl="gif.aspx" />
调用的时候可以用 Session["vnum"]
Session的值就是图片的值,可以作为验证
---------------------------------------------------------------------------------------------------------------
因篇幅问题不能全部显示,请点此查看更多更全内容