首先在登陆界面login.aspx加一个Image控件,ImageUrl指向ValidateCode.aspx。
ValidateCode.aspx用来生成验证码。Page_Load如下:
private void Page_Load(object sender, System.EventArgs e)
{
string checkCode = CreateRandomCode(4);
Session["CheckCode"] = checkCode;
CreateImage(checkCode);
}
其中定义了两个函数,CreateRandomCode生成验证码,CreateImage将其输入到页面。对于用Session记录验证码,当然是用于判断验证码的输入是否正确了。
private string CreateRandomCode(int codeCount)
{
string allChar = "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" ;
string[] allCharArray = allChar.Split(',');
string randomCode = "";
int temp = -1;
Random rand = new Random();
for(int i = 0; i < codeCount; i++)
{
if(temp != -1)
rand = new Random(i*temp*((int)DateTime.Now.Ticks));
int t = rand.Next(35);
if(temp == t)
return CreateRandomCode(codeCount);
temp = t;
randomCode += allCharArray[t];
}
return randomCode;
}
private void CreateImage(string checkCode)
{
int iwidth = (int)(checkCode.Length * 11.5);
System.Drawing.Bitmap image = new System.Drawing.Bitmap(iwidth, 20);
Graphics g = Graphics.FromImage(image);
Font f = new System.Drawing.Font("Arial", 10, System.Drawing.FontStyle.Bold);
Brush b = new System.Drawing.SolidBrush(Color.DarkBlue);
g.Clear(Color.White);
g.DrawString(checkCode, f, b, 3, 3);
System.IO.MemoryStream ms = new System.IO.MemoryStream();
image.Save(ms,System.Drawing.Imaging.ImageFormat.Jpeg);
Response.ClearContent();
Response.ContentType = "image/Jpeg";
Response.BinaryWrite(ms.ToArray());
g.Dispose();
image.Dispose();
}
相关推荐
用C#和ASP.Net编写的可以生成网页上的随机验证码的程序模块
用ASP.NET生成随机验证码(源码+注释)
C# .net asp -生成验证码 可自由设置验证码长度 内含完整demo
asp.net(c#)生成验证码 点击可刷新
ASP.NET C# 网页验证码 private void Page_Load(object sender, System.EventArgs e) { // 在此处放置用户代码以初始化页面 validatenumimage vnimg=new validatenumimage(8); string vnum=vnimg.ValidateNum;...
随机验证码的生成,asp.net的ashx一般处理程序
主要介绍了ASP.NET生成图形验证码的方法,结合实例形式分析了asp.net生成图形验证码的步骤与相关实现技巧,需要的朋友可以参考下
ASP.NET环境下生成漂亮的验证码,可以借鉴下
C# ASP.net生成中文验证码 并写入SESSION
C#/asp.net复杂验证码 包括中文英文字母和数字.无视大小写..
ASP.NET验证码图片的生成和使用 注意:使用C#编写,(多种个示例文件,随你挑;注释我已经写的很详细) 如果你下载了觉得不值,请大家板砖拍我!
asp.net c#验证码程序 vs2005环境下编写的可自动生成验证码
C#实现的ASP.NET验证码控件,支持生成动态验证码图片,支持点击刷新,支持中文(日文)字符,支持字符彩色、扭曲、旋转,支持图像噪化。 推荐下载最新升级版2.0.1.0:http://download.csdn.net/source/2382392
本文首先介绍了如何在ASP.NET 中处理汉字编码的原理,利用ASP.NET生成动态的彩色汉字验证码,并给出了实现生成动态的彩色汉字验证码的程序代码……
ASP.NET验证码程序,可以生成图片,也可以直接显示文本,含调用实例
本文实例讲述了ASP.NET实现的生成验证码功能。分享给大家供大家参考,具体如下: 生成验证码原理:产生随机字符,并将字符生成为图片,同时储存到Session里去,然后验证用户输入的内容是否与Session中的验证码相符...
主流编程语言:ASP.NET和C#.NET 序言 一.数据库介绍 1.1数据库中直接建库建表 1.2数据库中用代码建库建表 1.3数据库的增删改查语法 1.4 Access数据库 1.5 XML数据库 二.ASP.NET知识介绍 2.1.上传控件FileUpload ...
一个利用验证码登陆校验的小例子,验证码都是随机生成,源码中配有详细说明注释,参数可以自行设置,登陆账号密码可以随便填写。ValidateCode.aspx为验证码生成文件
不少网站为了防止用户利用...所谓验证码,就是将一串随机产生的数字或符号,生成一幅图片, 图片里加上一些干扰象素(防止OCR),由用户肉眼识别其中的验证码信息,输入表单提交网站验证,验证成功后才能使用某项功能。
【ASP.NET编程知识】Asp.net Web Api实现图片点击式图片验证码功能.docx