最近更新   设为主页   在ASP.NET下实现数字和字符相混合的验证码C# 加入收藏  
计算机基础教程网 本站招聘  
 [投稿登 陆]    [问题求解或论坛登 陆]
ITWEN首页操作系统网络冲浪办公软件网页设计图形图象认证考试程序设计数据库其它文章交流论坛  
  当前位置:ITWen >>  ASP.NET  >>  在ASP.NET下实现数字和字符相混合的验证码C#
在ASP.NET下实现数字和字符相混合的验证码C#
作者:ItWen收集整理    来源:www.itwen.com    更新时间:2006-11-21
[ 收藏此页到: 天天 | 和讯 | 博采 | ViVi | 狐摘 | 我摘 ]  
  

为了便于大家学习,修改vb.net code成为c#
gif.aspx文件修改的内容
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
// RndNum是一个自定义函数
string VNum = RndNum(5);
Session["VNum"] = VNum;
ValidateCode(VNum);
}
private void ValidateCode(string VNum)
{
//生成验证code
System.Drawing.Bitmap img;
System.Drawing.Graphics g;
System.IO.MemoryStream ms;
int gheight = Convert.ToInt32(VNum.Length*11.5);
//gheight为图片宽度,根据字符长度自动更改图片宽度
img = new Bitmap(gheight,20);
g = Graphics.FromImage(img);
//在矩形内绘制字串(字串,字体,画笔颜色,左上x.左上y)
g.DrawString(VNum,new Font("Arial",10),new SolidBrush(System.Drawing.Color.Blue),3,3);
ms = new MemoryStream();
img.Save(ms,ImageFormat.Png);
Response.ClearContent(); //需要输出图象信息 要修改HTTP头
Response.ContentType = "image/gif";
Response.BinaryWrite(ms.ToArray());

g.Dispose();
img.Dispose();
Response.End();
}
// ''函数名称:RndNum
// ''函数参数:VcodeNum--设定返回随机字符串的位数
// ''函数功能:产生数字和字符混合的随机字符串
private string RndNum(int VcodeNum)
{
string Vchar = "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[] VcArray = Vchar.Split(",".ToCharArray()); //将字符串生成数组
string VNum = "";
int i;
for(i=1;i {
System.Random ro = new Random();
double decA = ro.NextDouble();
VNum = VNum + VcArray[Convert.ToInt32(35*decA)];
}
// For i=1 to VcodeNum
// Randomize
// VNum=VNum & VcArray(Int(35*Rnd)) ''数组一般从0开始读取,所以这里为35*Rnd
// Next
return VNum;
}
ValidateCode.aspx修改内容
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
string VNum;
if(Session["VNum"]!= null)
{
VNum = Session["VNum"].ToString();
Session.Abandon();
ViewState["VNum"]=VNum;
}
}
private void Button1_Click(object sender, System.EventArgs e)
{
if(txtValidateCode.Text == ViewState["VNum"].ToString() )
{
lblShow.Text="提示:验证通过" ;
}
else
{
lblShow.Text="所填写的验证码与所给的不符";
}
}(完)计算机基础教程网


  引用提示:
  内容页面:在ASP.NET下实现数字和字符相混合的验证码C# --- ASP.NET
  作者:ItWen收集整理
  来源:www.ITWEN.com 计算机基础教程网
  

  版权申明:
  本网站所有内容,未经注明的,版权一律属于计算机基础教程网(ITWEN.com)制作署所有。转载引用本网站的原创文章,请务必注明信息来源,标明“计算机基础教程网(ITWEN.com)”字样。
  计算机基础教程网(ITWEN.com)依法保护知识产权,如果我们的文章有涉及或侵犯您的有关权益,请即时与我们联系, 注明网址及文章,我们会即时处理或删除, 感谢您的合作!   


】 【返回站点首页】【打印本页】【关闭本页
     资料搜索
     热门文章
·PS中英文对照1
·怎样雇用一名 Web 设计师
·关于网站建设
·chm文件的文件格式chmform
·一些非常有用的JAVA常用方法1
·涂格子
·ASP.NET数据库编程
·关于Window.open的参数小
·javascript动态装入XML
·动态网站首页的静态生成方法
·Javascript Game
·MapInfo5.0中文版用户手册
·LANGuard——网络的新守护神
·屏蔽.NET自定义开发组件中的属性
·有关表格边框的css语法整理1
     前面文章
·如何解决系统空间不足的问题
·彩色纸屑
·vb.net点击按钮无效的tool
·VoIP问答
·vb.net中类的使用方法
·Debian PXE 安装
·为课件制作数据载入效果
·Web服务器的安全和攻击防范
·利用VB访问Internet
·VPDN下配置RADIUS
·通过XMLHTTP的客户端脚本
·ASP进阶之文章在线管理更新3
·Asp.net中进行安全的 ADO
·EJB菜鸟入门三板斧
·Photomix精彩数码画中画
·通过Exchange2000考试的
·VisualC#中动态操作SQLS
·交换机配置之交换机高级配置的常见命
·LINUX系统安全配置宝典
·Writing All Job D

文章: 在ASP.NET下实现数字和字符相混合的验证码C# 已经被浏览了 次。
免责声明 | 关于我们 | 广告联系 | 友情链接 | 帮助设置 | 网站导航 | 最近更新 | 共同合作
计算机基础教程网(www.ITwen.com) 版权所有
copyright 2005-2006,All Rights Reserved
计算机基础教程网