zoukankan      html  css  js  c++  java
  • asp.net验证码

    有很多朋友在群里要验证码的源码,我就给大家分享一个 

    步骤一、创建一个,ValidateCode.aspx页面

    步骤二、在ValidateCode.aspx.cs页面输入如下代码

    Code
    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Drawing;
    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;

    public partial class manager_yzm_ValidateCode : System.Web.UI.Page
    {
        
    protected void Page_Load(object sender, EventArgs e)
        {
            
    string checkCode = CreateRandomCode(4);
            Session[
    "CheckCode"= checkCode;
            CreateImage(checkCode);
        }
        
    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.White);
            
    //g.FillRectangle(new System.Drawing.SolidBrush(Color.Blue),0,0,image.Width, image.Height);
            g.Clear(Color.Blue);    g.DrawString(checkCode, f, b, 33);
            Pen blackPen 
    = new Pen(Color.Black, 0);
            Random rand 
    = new Random();
            
    for (int i=0;i<5;i++)
            {
                
    int y = rand.Next(image.Height);        
                g.DrawLine(blackPen,
    0,y,image.Width,y);
            }        
            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();}
    }
  • 相关阅读:
    [翻译] FreeStreamer 在线流媒体播放
    [转] 每个程序员都必须遵守的编程原则
    iOS7以下设备获取mac地址
    iOS中alloc与init
    ON、WHERE、HAVING的区别
    在SQL语言中,join什么时候用,什么时候不用啊?请高手举例解释一下。谢谢
    你能识别这些科技公司的真假logo吗?
    in 和 exist 区别
    union和union all的区别
    Mysql避免全表扫描sql查询优化 .
  • 原文地址:https://www.cnblogs.com/qinying/p/1441200.html
Copyright © 2011-2022 走看看