<%@ Page Language="C#" %>
<%
if (Session["vCode"] != null) Session["vCode"] = null;
if (true)
{
if (Session["TryTime"] != null)
{
Session["TryTime"] = (int)Session["TryTime"] + 1;
if ((int)Session["TryTime"] > 5) System.Threading.Thread.Sleep(3000);
if ((int)Session["TryTime"] > 10) System.Threading.Thread.Sleep(5000);
if ((int)Session["TryTime"] > 30) System.Threading.Thread.Sleep(12000);
}
else
{
Session.Add("TryTime", 1);
}
System.Threading.Thread.Sleep(1000);
string vCode = string.Empty;
Random rand = new Random();
System.Drawing.Bitmap imgCode = new System.Drawing.Bitmap(60, 20);
System.Drawing.Graphics gImgCode = System.Drawing.Graphics.FromImage(imgCode);
gImgCode.Clear(System.Drawing.Color.White);
for (int y = 0; y < 20; y += 2)
for (int x = 0; x < 60; x += 2)
imgCode.SetPixel(x, y, System.Drawing.Color.FromArgb(rand.Next(256), rand.Next(256), rand.Next(256)));
for (int i = 0; i < 4; i++)
{
System.Drawing.Bitmap imgChar = new System.Drawing.Bitmap(20, 20);
System.Drawing.Graphics gImgChar = System.Drawing.Graphics.FromImage(imgChar);
gImgChar.Clear(System.Drawing.Color.Transparent);
gImgChar.RotateTransform((float)rand.Next(-8, 8));
vCode += "ABCDEFGHIJKLMNOPQRSTUVWXYZ"[rand.Next(26)];
gImgChar.DrawString(vCode[i].ToString(), new System.Drawing.Font("ArialBlack", 13), new System.Drawing.SolidBrush(System.Drawing.Color.FromArgb(rand.Next(20), 50 + rand.Next(20), 100 + 100 + rand.Next(40))), 2, 0);
gImgCode.DrawImageUnscaled(imgChar, i * 13, 0);
gImgChar.Dispose();
imgChar.Dispose();
}
Session.Add("vCode", vCode);
System.IO.MemoryStream ms = new System.IO.MemoryStream();
imgCode.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
gImgCode.Dispose();
imgCode.Dispose();
Response.ClearContent();
Response.ContentType = "image/jpeg";
Response.BinaryWrite(ms.ToArray());
Response.End();
}
else
{
Response.Redirect("~/", true);
}
%>
做网站时找到个验证码生成的东东,觉得多好的,分享下,具体的可以自己改下~~