สร้างเพจใหม่ image.aspx และเพิ่มเนมสเปซ:
การใช้ System. Drawing.Imaging;
โดยใช้ System.IO
จากนั้นคัดลอกโค้ดต่อไปนี้ในเหตุการณ์ Page_load:
//สร้างรหัสยืนยัน 4 หลัก
สตริง tmp = RndNum(4);
HttpCookie a = ใหม่ HttpCookie("ImageV",tmp);
Response.Cookies.Add(a);
this.ValidateCode(tmp);
ถัดไปเพิ่มสองวิธีในหน้า:
โมฆะส่วนตัว ValidateCode(string VNum)
-
บิตแมป Img=null;
กราฟิก g=null;
MemoryStream ms=null;
int gheight=VNum.Length*12;
Img=บิตแมปใหม่ (ความสูง 25);
g=Graphics.FromImage(Img);
//สีพื้นหลัง
g.Clear (สี ขาว);
//แบบอักษรข้อความ
แบบอักษร f=แบบอักษรใหม่ ("Arial Black",10);
//สีข้อความ
SolidBrush s=SolidBrush ใหม่ (Color.Black);
g.DrawString(VNum,f,s,3,3);
ms=เมมโมรี่สตรีมใหม่();
Img.Save(ms,ImageFormat.Jpeg);
Response.ClearContent();
Response.ContentType="รูปภาพ/Jpeg";
Response.BinaryWrite(ms.ToArray());
g.ทิ้ง();
Img.ทิ้ง();
การตอบสนองสิ้นสุด();
}
สตริงส่วนตัว RndNum(int VcodeNum)
-
สตริง Vchar = "0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,g,h,i,j,k,l,m, ไม่มี,o,p"+
",q,r,s,t,u,v,w,x,y,z";
string[] VcArray=Vchar.Split(ถ่านใหม่ [] {','});
สตริง VNum = "";
int temp=-1;
สุ่ม rand=ใหม่ สุ่ม();
สำหรับ(int i=1;i<VcodeNum+1;i++)
-
ถ้า(อุณหภูมิ!=-1)
-
rand=new สุ่ม(i*temp*unchecked((int)DateTime.Now.Ticks));
-
int t=rand.ถัดไป(35);
ถ้า(temp!=-1&&temp==t)
-
กลับ RndNum (VcodeNum);
-
อุณหภูมิ=t;
VNum+=VcArray[t];
-
กลับ VNum;
}
หากคุณต้องการสร้างรหัสยืนยันบนเพจ a.aspx ให้เพิ่มตัวควบคุมรูปภาพลงในเพจ โดยสมมติว่ามีชื่อว่า: ImageButton1 จากนั้นเขียนโค้ดต่อไปนี้ในเหตุการณ์ page_Load:
ImageButton1.ImageUrl = "image.aspx"
ด้วยวิธีนี้
คุณสามารถสร้างรหัสยืนยันได้ สามารถวางหน้า image.aspx ได้ทุกที่ แต่โปรดทราบว่า ImageButton1.ImageUrl จะต้องเขียนอย่างถูกต้องในระดับเดียวกันสามารถเขียน image.aspx ได้โดยตรง และระดับบนสุดสามารถทำได้ เขียน ../image.aspx สะดวกมาก