- 浏览: 53199 次
- 性别:
- 来自: 长沙
最新评论
-
laiyuan:
规范太差了吧,都没注释,完全没达到需要,输出的levelSet ...
字符串多模式匹配算法:关键字过滤技术 -
supercode:
ACCP?
ASP.NET加上水印 -
huqing:
水印 是什么 不懂
ASP.NET加上水印 -
leiwuluan:
.NET截取指定长度汉字超出部分以...代替 -
leiwuluan:
.NET截取指定长度汉字超出部分以...代替
HTML的代码:
1.<!-- 2. Document : ASP.NET用一般处理程序生成验证码 3. Created on : 2008-10-13 17:04 4. Author : 牛腩 5.--> 6.<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 7.<html> 8. <head> 9. <title></title> 10. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 11. <script type="text/javascript"> 12. function change() { 13. var imgNode = document.getElementById("vimg"); 14. imgNode.src = "WaterMark.ashx?t=" + (new Date()).valueOf(); // 这里加个时间的参数是为了防止浏览器缓存的问题 15. } 16. </script> 17. </head> 18. <body> 19. <img src="WaterMark.ashx" id="vimg" alt="" /><input type="button" value="换一张图片" onclick="change()" /> 20. </body> 21.</html>
一般处理程序WaterMark.ashx的代码:
1.<%@ WebHandler Language="C#" Class="WaterMark" %> 2. 3.using System; 4.using System.Web; 5.using System.Drawing; 6.using System.Drawing.Drawing2D; 7.using System.Web.SessionState; 8. 9.public class WaterMark : IHttpHandler, IRequiresSessionState // 要使用session必须实现该接口,记得要导入System.Web.SessionState命名空间 10.{ 11. 12. public void ProcessRequest(HttpContext context) 13. { 14. string checkCode = GenCode(5); // 产生5位随机字符 15. context.Session["Code"] = checkCode; //将字符串保存到Session中,以便需要时进行验证 16. System.Drawing.Bitmap image = new System.Drawing.Bitmap(70, 22); 17. Graphics g = Graphics.FromImage(image); 18. try 19. { 20. //生成随机生成器 21. Random random = new Random(); 22. 23. //清空图片背景色 24. g.Clear(Color.White); 25. 26. // 画图片的背景噪音线 27. int i; 28. for (i = 0; i < 25; i++) 29. { 30. int x1 = random.Next(image.Width); 31. int x2 = random.Next(image.Width); 32. int y1 = random.Next(image.Height); 33. int y2 = random.Next(image.Height); 34. g.DrawLine(new Pen(Color.Silver), x1, y1, x2, y2); 35. } 36. 37. Font font = new System.Drawing.Font("Arial", 12, (System.Drawing.FontStyle.Bold)); 38. System.Drawing.Drawing2D.LinearGradientBrush brush = new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(0, 0, image.Width, image.Height), Color.Blue, Color.DarkRed, 1.2F, true); 39. g.DrawString(checkCode, font, brush, 2, 2); 40. 41. //画图片的前景噪音点 42. g.DrawRectangle(new Pen(Color.Silver), 0, 0, image.Width - 1, image.Height - 1); 43. System.IO.MemoryStream ms = new System.IO.MemoryStream(); 44. image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif); 45. context.Response.ClearContent(); 46. context.Response.ContentType = "image/Gif"; 47. context.Response.BinaryWrite(ms.ToArray()); 48. } 49. finally 50. { 51. g.Dispose(); 52. image.Dispose(); 53. } 54. } 55. 56. /// <summary> 57. /// 产生随机字符串 58. /// </summary> 59. /// <param name="num">随机出几个字符</param> 60. /// <returns>随机出的字符串</returns> 61. private string GenCode(int num) 62. { 63. string str = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";//"的一是在不了有和人这中大为上个国我以要他时来用们生到作地于出就分对成会可主发年动同工也能下过子说产种面而方后多定行学法所民得经十三之进着等部度家电力里如水化高自二理起小物现实加量都两体制机当使点从业本去把性好应开它合还因由其些然前外天政四日那社义事平形相全表间样与关各重新线内数正心反你明看原又么利比或但质气第向道命此变条只没结解问意建月公无系军很情者最立代想已通并提直题党程展五果料象员革位入常文总次品式活设及管特件长求老头基资边流路级少图山统接知较将组见计别她手角期根论运农指几九区强放决西被干做必战先回则任取据处队南给色光门即保治北造百规热领七海口东导器压志世金增争济阶油思术极交受联什认六共权收证改清己美再采转更单风切打白教速花带安场身车例真务具万每目至达走积示议声报斗完类八离华名确才科张信马节话米整空元况今集温传土许步群广石记需段研界拉林律叫且究观越织装影算低持音众书布复容儿须际商非验连断深难近矿千周委素技备半办青省列习响约支般史感劳便团往酸历市克何除消构府称太准精值号率族维划选标写存候毛亲快效斯院查江型眼王按格养易置派层片始却专状育厂京识适属圆包火住调满县局照参红细引听该铁价严"; 64. char[] chastr = str.ToCharArray(); 65. // string[] source ={ "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "#", "$", "%", "&", "@" }; 66. string code = ""; 67. Random rd = new Random(); 68. int i; 69. for (i = 0; i < num; i++) 70. { 71. //code += source[rd.Next(0, source.Length)]; 72. code += str.Substring(rd.Next(0, str.Length), 1); 73. } 74. return code; 75. 76. } 77. 78. public bool IsReusable 79. { 80. get 81. { 82. return false; 83. } 84. } 85. 86.}
发表评论
-
常用表单正则表达式
2010-06-23 16:53 872常用表单正则表达式,仅 ... -
asp.net 页面中添加普通视频的几种方式
2010-06-18 11:29 1004第一种 是通过调用window media player进行 ... -
C#中读取“已注册的文件类型”的图标及读取指定文件图标的方法
2010-04-12 17:02 1547using System; using System.IO; ... -
关于OpenFileDialog的使用
2010-03-11 18:37 1750为了方便同事在日常工作中很快速生成大量数据, 我做 ... -
ASP.NET页面刷新的实现方法总结
2010-02-26 15:44 1309先看看ASP.NET页面刷新的实现方法: 第一: pri ... -
getElementById 与 getElementsByTagName的区别【Javascript】
2010-01-30 14:45 1769在javascript中,操作HTML DOM时,需要经常用到 ... -
javascript实现垂直无缝滚动详解
2010-01-30 14:43 1510无缝滚动可以在flash中 ... -
javascript无缝水平滚动实例
2010-01-30 14:42 2580首先看源代码: <html> <head ... -
分页查询的SQL存储过程
2010-01-29 11:40 630select top 5 * from student ... -
C# Checklistbox用法
2010-01-26 17:54 32401、添加项: checkedListBox1.I ... -
C#实现组合键
2010-01-26 17:25 1949// Ctrl + H if ((Control.Modi ... -
JS实现可拖拽的菜单
2009-11-19 16:56 919Html代码 <html> ... -
认识C#中的委托和事件
2009-11-10 19:53 751【简 介】委托 和 事件在 .Net Framework中的应 ... -
VS2005快捷键大全
2009-11-10 18:25 1702CTRL + SHIFT + B生成解决方案 CTRL + F ... -
CSS+JQuery实现的性感漂亮导航
2009-11-10 18:06 14171.demo.html HTML代码: & ... -
C# WinForm 中批量清除文本框
2009-11-10 16:47 2477/// <summary> ... -
C#类和接口、虚方法和抽象方法及值类型和引用类型的区别
2009-10-13 15:41 10781.C#类和接口的区别接口 ... -
HTML中小meta的大作用
2009-10-13 15:31 628以前一直不知道HTML中的 ... -
javaScript日期时间
2009-09-22 14:09 907JavaScript脚本如下: <script lan ... -
ASP.NET获取客户端IP地址、系统版本、浏览器版本
2009-09-22 13:18 3005using System; using System.Dat ...
相关推荐
簡單介紹了 .net使用一般处理程序生成验证码
利用代码,设计实现程序生成验证码的作用。
用C#和ASP.Net编写的可以生成网页上的随机验证码的程序模块
ASP.NET验证码程序,可以生成图片,也可以直接显示文本,含调用实例
随机验证码的生成,asp.net的ashx一般处理程序
可用于MVC、asp.net 登录注册等页面生成验证码 一般处理程序获取验证码、mvc获取验证码、切换验证码
.NET 验证码 生成 简单易用 给你的页面添加验证码。
本文首先介绍了如何在ASP.NET 中处理汉字编码的原理,利用ASP.NET生成动态的彩色汉字验证码,并给出了实现生成动态的彩色汉字验证码的程序代码……
asp.net c#验证码程序 vs2005环境下编写的可自动生成验证码
本文实例讲述了ASP.NET实现的生成验证码功能。分享给大家供大家参考,具体如下: 生成验证码原理:产生随机字符,并将字符生成为图片,同时储存到Session里去,然后验证用户输入的内容是否与Session中的验证码相符...
很实用的生成汉字验证码的程序,并且生成验证码图片,以及验证功能,就如同QQ注册的验证码,生成汉字或数字字母自己选择
生成验证码,而且是区分大小写的,用asp.net做的
产生验证码,CSharp,.NET,C#,在实际开发中抽出来的。
常用的生成验证码程序 ,图片效果如下: 源程序如下: 代码如下:using System; using System.IO; using System.Drawing; using System.Drawing.Imaging; using System.Text; using System.Collections;...
运行程序,在页面中将显示英文和数字混合的验证码,用户只有输入正确的验证码后,才可以完成登录。如果当前生成的验证码不容易辨认,也可以单击“看不清?换一个”超链接生成新的验证码,这时页面并不会刷新。本项目...
本文实例为大家分享了ASP.NET生成验证码的具体代码,供大家参考,具体内容如下 首先,添加一个一般处理程序 注释很详细了,有不懂的欢迎评论 using System; using System.Collections.Generic; using System....
用于生成图片验证码(四则运算)的asp程序,单文件 演示效果请看 http://gq.zzlife.net/add.asp
根据图片A B C D...随机生成验证码 .net程序 没分下载资源……烦