| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 747 人关注过本帖
标题:hebingbing进来
只看楼主 加入收藏
天道微尘
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-3-27
收藏
 问题点数:0 回复次数:5 
hebingbing进来
我把大概浏览了一下论坛,我认定你了,我要和你做个朋友,完了我要问你一个问题
我要问的问题是:
关于验证码技术。我什么都不知道,我现在不要最好的,要一个不太落后也不是太难,我能接受的。
搜索更多相关主题的帖子: hebingbing 
2008-03-28 17:38
hebingbing
Rank: 6Rank: 6
来 自:黄土高坡
等 级:贵宾
威 望:27
帖 子:3417
专家分:371
注 册:2007-10-22
收藏
得分:0 
我来了,你的要求有点太那个什么啊……我都不知道怎么给你回复了
2008-03-28 17:41
hebingbing
Rank: 6Rank: 6
来 自:黄土高坡
等 级:贵宾
威 望:27
帖 子:3417
专家分:371
注 册:2007-10-22
收藏
得分:0 
你先建立两个页面……
分别命名为img.aspx和index.aspx然后在img.aspx.cs中写上
程序代码:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Drawing;   //添加的命名空间
using System.Drawing.Imaging;   //添加的命名空间
public partial class img : System.Web.UI.Page
{   //该页面将用于生成验证码图片
    protected void Page_Load(object sender, EventArgs e)
    {     //调用函数将验证码生成图片
        this.CreateCheckCodeImage(GenerateCheckCode()); 
       
    }
    private string GenerateCheckCode()
    {  //产生五位的随机字符串
        int number;
        char code;
        string checkCode = String.Empty;
        System.Random random = new Random();  //Random类表示伪随机数生成器,是一种能够生产满足某些随机性统计要求的数字序列的设备。
        for (int i = 0; i < 5; i++)  
        {
            number = random.Next();  //该方法返回一个小于所指定最大的非负随机数。
            if (number % 2 == 0)
                code = (char)('0' + (char)(number % 10));
            else
                code = (char)('A' + (char)(number % 26));
            checkCode += code.ToString();
        }
        //Response.Cookies.Add(new HttpCookie("CheckCode", checkCode))
       Session["CheckCode"] = checkCode;//用于客户端校验码比较
        return checkCode;
    }
    private void CreateCheckCodeImage(string checkCode)
    {  //将验证码生成图片显示
        if (checkCode == null || checkCode.Trim() == String.Empty)
            return;
        System.Drawing.Bitmap image = new System.Drawing.Bitmap((int)Math.Ceiling((checkCode.Length * 12.5)), 22);
        Graphics g = Graphics.FromImage(image);
        try
        {
            //生成随机生成器 
            Random random = new Random();
            //清空图片背景色 
            g.Clear(Color.White);
            //画图片的背景噪音线 
            for (int 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 | System.Drawing.FontStyle.Italic));
            System.Drawing.Drawing2D.LinearGradientBrush brush = new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(0, 0, image.Width, image.Height), Color.Blue, Color.DarkRed, 1.2f, true);
            g.DrawString(checkCode, font, brush, 2, 2);
            //画图片的前景噪音点 
            for (int i = 0; i < 100; i++)
            {
                int x = random.Next(image.Width);
                int y = random.Next(image.Height);
                image.SetPixel(x, y, Color.FromArgb(random.Next()));
            }
            //画图片的边框线 
            g.DrawRectangle(new Pen(Color.Silver), 0, 0, image.Width - 1, image.Height - 1);
             ms = new ();
            image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
            Response.ClearContent();
            Response.ContentType = "image/Gif";
            Response.BinaryWrite(ms.ToArray());
        }
        finally
        {
            g.Dispose();
            image.Dispose();
        }
    }
}

怎么样还能接受吧?
完了你在你的index.aspx中
 <asp:Image ID="Image1" runat="server" ImageUrl="~/ValidateCode.aspx" />
要是还不能接受的话,我觉得你就只能要那种没有干扰的那种的了
2008-03-28 17:47
天道微尘
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-3-27
收藏
得分:0 
基本上能理解,非常的感谢你,要是再选版主的话,我肯定选你!
2008-03-28 17:49
hebingbing
Rank: 6Rank: 6
来 自:黄土高坡
等 级:贵宾
威 望:27
帖 子:3417
专家分:371
注 册:2007-10-22
收藏
得分:0 
我可没有能力哦……
2008-03-28 17:51
zhou
Rank: 1
等 级:禁止发言
帖 子:429
专家分:0
注 册:2006-6-16
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽
2008-03-30 17:04
快速回复:hebingbing进来
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021352 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved