قم بإنشاء صفحة image.aspx جديدة وأضف مساحة الاسم:
باستخدام System.Drawing.Imaging؛
باستخدام System.IO،
ثم انسخ الكود التالي في حدث Page_load:
// أنشئ رمز تحقق مكونًا من 4 أرقام
سلسلة tmp = RndNum(4);
HttpCookie a = new HttpCookie("ImageV",tmp);
Response.Cookies.Add(a);
this.ValidateCode(tmp);
بعد ذلك أضف طريقتين إلى الصفحة:
Private void ValidateCode(string VNum)
{
الصورة النقطية Img=null;
الرسومات ز = فارغة؛
MemoryStream ms=null
;
Img=new Bitmap(gheight,25);
g=Graphics.FromImage(Img);
// لون الخلفية
g.Clear(Color.White);
//خط النص
الخط f=new Font("Arial Black",10);
// لون النص
SolidBrush s=new SolidBrush(Color.Black);
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();
}
سلسلة خاصة 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، ن، س، ع"+
",q,r,s,t,u,v,w,x,y,z";
string[] VcArray=Vchar.Split(new Char [] {','});
سلسلة VNum = ""؛
int temp=-1;
Random=new Random();
ل(int i=1;i<VcodeNum+1;i++)
{
إذا (درجة الحرارة!=-1)
{
rand=new Random(i*temp*unchecked((int)DateTime.Now.Ticks));
}
int t=rand.Next(35);
إذا (درجة الحرارة!=-1&&temp==t)
{
إرجاع RndNum(VcodeNum);
}
درجة الحرارة = ر؛
VNum+=VcArray[t];
}
إرجاع رقم VNum؛
}
إذا كنت تريد إنشاء رمز التحقق على الصفحة a.aspx، أضف عنصر تحكم صورة إلى الصفحة، بافتراض أنه يسمى: ImageButton1، ثم اكتب التعليمة البرمجية التالية في حدث page_Load:
ImageButton1.ImageUrl = "image.aspx" ؛
بهذه الطريقة يمكنك إنشاء رمز التحقق الذي يتم توفيره. يمكن وضع صفحة image.aspx في أي مكان، ولكن يرجى ملاحظة أنه يجب كتابة ImageButton1.ImageUrl بشكل صحيح على نفس المستوى، ويمكن للمستوى العلوي ذلك اكتب ../image.aspx إنها مريحة للغاية.