identifiercode.aspx est un fichier de code d'identification.
identifiercode.cs à propos de :
utiliser le système ;
en utilisant System.Data ;
en utilisant System.Configuration ;
en utilisant System.Collections ;
en utilisant System.Web ;
en utilisant System.Web.Security ;
en utilisant System.Web.UI ;
en utilisant System.Web.UI.WebControls ;
en utilisant System.Web.UI.WebControls.WebParts ;
en utilisant System.Web.UI.HtmlControls ;
en utilisant System.Drawing ;
en utilisant System.Drawing.Imaging ;
en utilisant System.IO ;
Code d'identification de classe partielle publique : System.Web.UI.Page
{
protected void Page_Load (expéditeur de l'objet, EventArgs e)
{
chaîne tmp = RndNum(4);
HttpCookie a = new HttpCookie("ImageV", tmp);
Réponse.Cookies.Add(a);
this.ValidateCode(tmp);
}
private void ValidateCode (chaîne VNum)
{
Img bitmap = nul ;
Graphiques g = nul ;
MemoryStream ms = nul ;
int ghauteur = VNum.Longueur * 12;
Img = nouveau Bitmap (hauteur, 25) ;
g = Graphiques.FromImage(Img);
//背景颜色
g.Clair(Couleur.LightSteelBlue);
//文字字体
Police f = new Font("Arial Black", 10);
//文字颜色
SolidBrush s = nouveau SolidBrush(Color.RoyalBlue);
g.DrawString(VNum, f, s, 3, 3);
ms = nouveau MemoryStream();
Img.Save(ms, ImageFormat.Jpeg);
Réponse.ClearContent();
Réponse.ContentType = "images/Jpeg" ;
Réponse.BinaryWrite(ms.ToArray());
g.Dispose();
Img.Dispose();
Réponse.End();
}
chaîne privée RndNum(int VcodeNum)
{
chaîne Vchar = "0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,g,h,i,j,k,l,m, non,p" +
",q,r,s,t,u,v,w,x,y,z";
string[] VcArray = Vchar.Split(new Char[] { ',' });
chaîne VNum = "" ;
température int = -1 ;
Rand aléatoire = new Random();
pour (int i = 1; i < VcodeNum + 1; i++)
{
si (temp != -1)
{
rand = new Random(i * temp * unchecked((int)DateTime.Now.Ticks));
}
int t = rand.Next(35);
si (temp != -1 && temp == t)
{
retourner RndNum (VcodeNum);
}
température = t ;
VNum += VcArray[t];
}
renvoyer NuméroV ;
}
}
Description du produit :
在需要它的页面html里添加
<img src="identifyingcode.aspx" />
Cookies HttpCookieCollection = Request.Cookies ;
chaîne tmp = cookies["ImageV"].Value ;
然后比tmp与获取的较验证码文本框中的值是否相同
Lire : http://enuosky.cnblogs.com/archive/2006/05/15/400954.html