小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

驗(yàn)證碼(C#) - .NET技術(shù) / ASP.NET

 遙遠(yuǎn)的橋zz 2011-05-02
using System;
using System.Configuration;
using System.IO;
using System.Collections;
using System.ComponentModel; using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

public partial class GetValidateCode : System.Web.UI.Page
{
   
private void Page_Load(object sender, System.EventArgs e)
    {
       
// 在此處放置用戶代碼以初始化頁面
        Response.ClearContent();
        Response.ContentType
= "images/Png";
        Response.BinaryWrite(GetVImageStream().ToArray());
    }


   
#region 產(chǎn)生圖片內(nèi)存流
   
/// <summary>
   
/// 產(chǎn)生圖片內(nèi)存流
   
/// </summary>
   
/// <returns>圖片內(nèi)存流</returns>
    private MemoryStream GetVImageStream()
    {
        MemoryStream ImageMemoryStream
= new MemoryStream();
       
string VCodeString = GetVCode(4);
        ConfigurationManager.AppSettings[
"code"] = VCodeString;
        Font VCodeFont
= new Font("Arial", 14, FontStyle.Bold);
        SolidBrush VCodeBrush
= new SolidBrush(Color.SandyBrown);
        Pen LinePen
= new Pen(Color.Ivory, 1);
        Bitmap Tmap
= new Bitmap(VCodeString.Length * 19, 24);
        Graphics TGrphics;
        TGrphics
= Graphics.FromImage(Tmap);
        TGrphics.Clear(BackGroundColor(
200, 50));
       
//產(chǎn)生干擾線
        for (int i = 1; i <= 6; i++)
        {
           
int TmpPosition = i * 4;
            Color LineColor
= BackGroundColor(100, 155);
            LinePen.Color
= LineColor;
            TGrphics.DrawLine(LinePen,
0, TmpPosition, VCodeString.Length * 19, 0);
            LineColor
= BackGroundColor(100, 155);
            LinePen.Color
= LineColor;
            TGrphics.DrawLine(LinePen,
0, 24, VCodeString.Length * 19, TmpPosition);
        }
       
//產(chǎn)生干擾線
        TGrphics.DrawString(VCodeString, VCodeFont, VCodeBrush, VCodeString.Length, 1);
        Tmap.Save(ImageMemoryStream, System.Drawing.Imaging.ImageFormat.Png);
        Tmap.Dispose();
        TGrphics.Dispose();
       
return ImageMemoryStream;
    }
   
#endregion

   
#region 隨機(jī)返回背景色
   
/// <summary>
   
/// 隨機(jī)返回顏色
   
/// </summary>
   
/// <param name="BeginRandomNumber">指定顏色開始的最小值</param>
   
/// <param name="RandomNumber">指定顏色值波動(dòng)的范圍</param>
   
/// <returns>隨機(jī)的Color</returns>
    private Color BackGroundColor(int BeginRandomNumber, int RandomNumber)
    {
       
int ColorR = 0;
       
int ColorG = 0;
       
int ColorB = 0;
        Random TRandom
= new Random();
        ColorR
= BeginRandomNumber + TRandom.Next(RandomNumber);
        ColorG
= BeginRandomNumber + TRandom.Next(RandomNumber);
        ColorB
= BeginRandomNumber + TRandom.Next(RandomNumber);
        Color ColorBG
= Color.FromArgb(ColorR, ColorG, ColorB);
       
return ColorBG;
    }
   
#endregion

   
#region 隨機(jī)產(chǎn)生字符串
   
/// <summary>
   
/// 隨機(jī)產(chǎn)生字符串
   
/// </summary>
   
/// <param name="VCodeLength">要產(chǎn)生的隨機(jī)字符串長度</param>
   
/// <returns></returns>
    public string GetVCode(int VCodeLength)
    {
       
if (VCodeLength <= 0)
        {
           
return "";
        }
       
string VCodeString = "0,1,2,3,4,5,6,7,8,9,a,b,c,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z";
       
string[] VCodeStringArray = VCodeString.Split(',');
       
string ReturnValue = "";
       
int RandomNumber = 0;
        Random TRandom
= new Random();
       
for (int i = 1; i <= VCodeLength; i++)
        {
            RandomNumber
= TRandom.Next(VCodeStringArray.Length);
            ReturnValue
+= VCodeStringArray[RandomNumber];
        }
       
return ReturnValue;
    }
   
#endregion

}

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約