.NET使用一般处理程序生成验证码(2)

来源:未知 责任编辑:责任编辑 发表时间:2013-11-15 19:50 点击:

  </body>
</html>

 


一般处理程序WaterMark.ashx的代码:


[csharp]
<%@ WebHandler Language="C#" Class="WaterMark" %> 
 
using System; 
using System.Web; 
using System.Drawing; 
using System.Drawing.Drawing2D; 
using System.Web.SessionState;   
 
public class WaterMark : IHttpHandler, IRequiresSessionState  // 要使用session必须实现该接口,记得要导入System.Web.SessionState命名空间  

 
    public void ProcessRequest(HttpContext context) 
    { 
        string checkCode = GenCode(5);  // 产生5位随机字符  
        context.Session["Code"] = checkCode; //将字符串保存到Session中,以便需要时进行验证  
        System.Drawing.Bitmap image = new System.Drawing.Bitmap(70, 22); 
        Graphics g = Graphics.FromImage(image); 
        try 
        { 
            //生成随机生成器  
            Random random = new Random(); 
 
            //清空图片背景色  
            g.Clear(Color.White); 
 
            // 画图片的背景噪音线  
            int i; 
            for (i = 0; i < 25; i++) 
            { 
                int x1 = random.Next(image.Width); 
                int x2 = random.Next(image.Width); 
                int y1 = random.Next(image.Height); 
                int y2 = random.Next(image.Height); 
                g.DrawLine(new Pen(Color.Silver), x1, y1, x2, y2); 
            } 
 
            Font font = new System.Drawing.Font("Arial", 12, (System.Drawing.FontStyle.Bold)); 

发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • 浅析.NET下XML数据访问新机制
  • asp.net 面试+笔试题目第1/2页
  • C# 邮件地址是否合法的验证
  • C#高级编程:数据库连接[1]
  • asp.net 设置GridView的选中行的实现代码
  • 经典C++程序1
  • IIS 自动回收导致后台定时器失效的问题解决
  • ASP.NET&#160;GridView列表代码示例
  • 微软ASP.NET站点部署指南(3):使用Web.Config文件的Transforma
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
Copyright © 2008-2015 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1