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.Imaging;
using System.Drawing;
using System.IO;
public partial class image : System.Web.UI.Page
... {
protected void Page_Load(object sender, EventArgs e)
...{
string tmp = RndNum(4);
// HttpCookie a = new HttpCookie("ImageV",tmp);
// Response.Cookies.Add(a);
//2006-3-31 郭挺 上面二行是用COOKIE来存下面用SESSION保存
Session["ImageV"] = tmp;
this.ValidateCode(tmp);
}
private void ValidateCode(string VNum)
...{
Bitmap Img = null;
Graphics g=null;
MemoryStream ms=null;
int gheight=VNum.Length*12;
Img=new Bitmap(gheight,25);
g=Graphics.FromImage(Img);
//背景颜色
g.Clear(Color.White);
//文字字体
Font f=new Font("Arial Black",12);
//文字颜色
SolidBrush s = new SolidBrush(Color.Gray);
g.DrawString(VNum,f,s,3,3);
ms=new MemoryStream();
Img.Save(ms,ImageFormat.Jpeg);
Response.ClearContent();
Response.ContentType="image/Jpeg";
Response.BinaryWrite(ms.ToArray());
g.Dispose();
Img.Dispose();
Response.End();
}
private string RndNum(int VcodeNum)
...{
string Vchar = "1,2,3,4,5,6,7,8,9,0";//A,B,C,D,E,F,G,H,I,J,K,L,M,N,P,Q,R,S,T,U,V,W,X,Y,Z
string[] VcArray=Vchar.Split(new Char [] ...{','});
string VNum="";
int temp=-1;
Random rand=new Random();
for(int i=1;i<VcodeNum+1;i++)
...{
if(temp!=-1)
...{
rand=new Random(i*temp*unchecked((int)DateTime.Now.Ticks));
}
//9
int t=rand.Next(9);
if(temp!=-1&&temp==t)
...{
return RndNum(VcodeNum);
}
temp=t;
VNum+=VcArray[t];
}
return VNum;
}
}
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.Imaging;
using System.Drawing;
using System.IO;
public partial class image : System.Web.UI.Page
... {
protected void Page_Load(object sender, EventArgs e)
...{
string tmp = RndNum(4);
// HttpCookie a = new HttpCookie("ImageV",tmp);
// Response.Cookies.Add(a);
//2006-3-31 郭挺 上面二行是用COOKIE来存下面用SESSION保存
Session["ImageV"] = tmp;
this.ValidateCode(tmp);
}
private void ValidateCode(string VNum)
...{
Bitmap Img = null;
Graphics g=null;
MemoryStream ms=null;
int gheight=VNum.Length*12;
Img=new Bitmap(gheight,25);
g=Graphics.FromImage(Img);
//背景颜色
g.Clear(Color.White);
//文字字体
Font f=new Font("Arial Black",12);
//文字颜色
SolidBrush s = new SolidBrush(Color.Gray);
g.DrawString(VNum,f,s,3,3);
ms=new MemoryStream();
Img.Save(ms,ImageFormat.Jpeg);
Response.ClearContent();
Response.ContentType="image/Jpeg";
Response.BinaryWrite(ms.ToArray());
g.Dispose();
Img.Dispose();
Response.End();
}
private string RndNum(int VcodeNum)
...{
string Vchar = "1,2,3,4,5,6,7,8,9,0";//A,B,C,D,E,F,G,H,I,J,K,L,M,N,P,Q,R,S,T,U,V,W,X,Y,Z
string[] VcArray=Vchar.Split(new Char [] ...{','});
string VNum="";
int temp=-1;
Random rand=new Random();
for(int i=1;i<VcodeNum+1;i++)
...{
if(temp!=-1)
...{
rand=new Random(i*temp*unchecked((int)DateTime.Now.Ticks));
}
//9
int t=rand.Next(9);
if(temp!=-1&&temp==t)
...{
return RndNum(VcodeNum);
}
temp=t;
VNum+=VcArray[t];
}
return VNum;
}
}