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;
public partial class AJAX_RandomJpgSam : System.Web.UI.Page
{
/// <summary>
/// 生成验证码图片
/// </summary>
/// <param name="checkCode"></param>
private void CreateCheckCodeImage(string checkCode)
{
if (checkCode == null || checkCode.Trim() == String.Empty)
return;
System.Drawing.Bitmap image = newSystem.Drawing.Bitmap((int)Math.Ceiling((checkCode.Length * 12.5)), 22);
Graphics g = Graphics.FromImage(image);
try
{
//生成随机生成器
Random random = new Random();
//清空图片背景色
g.Clear(Color.White);
//画图片的背景噪音线
for (int i = 0; i < 25; i++)
{
int x1 = random.Next(image.Width);
int x2 = random.Next(image.Width);
int y1 = random.Next(image.Height);
int y2 = random.Next(image.Height);
g.DrawLine(new Pen(Color.Silver), x1, y1, x2, y2);
}
Font font = new System.Drawing.Font("Arial", 12, (System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic));
System.Drawing.Drawing2D.LinearGradientBrush brush = newSystem.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(0, 0, image.Width, image.Height),Color.Blue, Color.DarkRed, 1.2f, true);
g.DrawString(checkCode, font, brush, 2, 2);
//画图片的前景噪音点
for (int i = 0; i < 100; i++)
{
int x = random.Next(image.Width);
int y = random.Next(image.Height);
image.SetPixel(x, y, Color.FromArgb(random.Next()));
}
//画图片的边框线
g.DrawRectangle(new Pen(Color.Silver), 0, 0, image.Width - 1, image.Height - 1);
System.IO.MemoryStream ms = new System.IO.MemoryStream();
image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
Response.ClearContent();
Response.ContentType = "image/Gif";
Response.BinaryWrite(ms.ToArray());
}
finally
{
g.Dispose();
image.Dispose();
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (Session["CheckCode"] == null)
Session["CheckCode"] = "";
CreateCheckCodeImage(GenerateCheckCode());
}
/// <summary>
/// 客户端验证用户输入验证码
/// </summary>
/// <param name="checkCode"></param>
/// <returns></returns>
public static bool CheckCode(string checkCode)
{
string txt = System.Web.HttpContext.Current.Session["CheckCode"] as string;
return checkCode == txt;
}
/// <summary>
/// 产生随机数
/// </summary>
/// <returns></returns>
private string GenerateCheckCode()
{
int number;
char code;
string checkCode = String.Empty;
System.Random random = new Random();
for (int i = 0; i < 5; i++)
{
number = random.Next();
if (number % 2 == 0)
code = (char)('0' + (char)(number % 10));
else
code = (char)('A' + (char)(number % 26));
checkCode += code.ToString();
}
Session["CheckCode"] = checkCode;
return checkCode;
}
}相关推荐
ASP.NET C#实践:生成优化的图形验证码
在ASP.NET应用中,我们可以使用C#编写代码来生成优化的图形验证码。在ASP.NET应用中,我们可以使用C#编写代码来生成优化的图形验证码。通过以上步骤,我们就可以在ASP.NET应用中实现生成和显示图形验证码的功能了ASP.NET C#实践:生成优化的图形验证码。通过以上步骤,我们就可以在ASP.NET应用中实现生成和显示图形验证码的功能了。最后,我们将生成的图片保存为PNG格式,并转换为Base64字符串。最后,我们将生成的图片保存为PNG格式,并转换为Base64字符串。
ASP.Net随机生成验证码
//首先创建一个页面ValidateCodePage: //创建Random的实例 Random rand=new Random(); protected void Page_Load(object sender,EventArgs e){ //调用该方法实现的事数字和字符独立的效果 //string str=getRandomValidate(4); //调用该方法实现的事验证码中数
ASP.NET验证码图片生成器源代码
图像转换技术是验证码生成中不可或缺的一环,它涉及到位图和矢量图的概念以及图像压缩技术,这些技术对验证码的生成和用户体验都有着直接的影响。
ASP.NET MVC生成随机验证码
ASP.NET MVC生成随机验证码 在ASP.NET MVC项目中验证码验证是缺少不了的,下面我们来了解项目生成验证码的流程和操作。 首先我们生成一个实体类里面放置着封装好的一些随机生成验证码的方法: 代码如下: public static class ValidCodeUtils { /// <summary> ///...
python解析通达信dat与blk数据文件【附源码】
本文介绍了一个完整的通达信金融数据解析器项目,该项目攻克了通达信专有二进制文件格式解析的技术难题。项目采用模块化架构,从基础二进制解析到增强数据分类,最终实现智能语义化列名生成,形成完整的数据处理链路。核心技术包括自适应编码检测、智能数据类型推断和基于业务规则的语义化处理,解决了逆向工程、多编码兼容性等挑战。项目成果显著,解析成功率达100%,数据可读性大幅提升,开发效率提高50%,为量化交易、可视化分析等场景提供了可靠数据支持。该方案不仅具备技术创新性,更具有实际工程应用价值,为金融数据分析领域提供了可复
5分钟搞定!用Keil MDK将STM32F103C8T6工程无缝迁移到ZET6开发板
本文详细介绍了如何在Keil MDK环境下快速将STM32F103C8T6工程迁移到ZET6开发板,涵盖硬件差异对比、工程配置调整、外设适配及编译排错等关键步骤,帮助开发者5分钟内完成工程移植,大幅提升开发效率。
asp.net生成验证码图片
<!--var theForm = document.forms[MyForm];if (!theForm) { theForm = document.MyForm;}function __doPostBack(eventTarget, eventArgument) { if (!theForm.onsubmit || (t
ROBOGUIDE教程:FANUC机器人X型焊枪气动点焊焊接
FANUC机器人X型焊枪气动点焊焊接虚拟仿真实现方法。
ASP.NET 生成随机验证码
我一直觉得用第三方控件生成的验证码太花了,用户体验不好,有的很难看清楚到底是什么,还是那种比较清楚一点的给人的感觉好点。 /// <summary> /// 这个方法用来生成随机验证码 /// </summary> private void ShowCode() { Random ran = new Random();...
层层剖析,让你彻底搞懂Self-Attention、MultiHead-Attention和Masked-Attention的机制和原理
本文内容 本文基于李宏毅老师对 Self-Attention 的讲解,进行理解和补充,并结合Pytorch代码,最终目的是使得自己和各位读者更好的理解Self-Attention 李宏毅Self-Attention链接: https://www.youtube.com/watch?v=hYdO9CscNes PPT链接见视频下方 通过本文的阅读,你可以获得以下知识: 什么是Self-Attention,为什么要用Self-Attention? Self-Attention是如何做的? Self-Atten
随机森林遥感反演详细教程
通过这篇文章,我们展示了如何使用Python对筛选后的影响因子进行随机森林建模,并应用于遥感数据反演森林生物量的任务。该流程不仅可以提高预测精度,还能有效处理大规模的遥感数据,为生态监测和森林管理提供重要支持。
asp.net生成验证码并提交验证
一般处理程序(WaterMark.ashx)中代码 using System; using System.Collections.Generic; using System.Drawing; using System.Linq; using System.Web; using System.Web.SessionState; /* * 创建人:张自由 * 时间:2020-09-14 * 用途:随机生成验证码 */ namespace Web.handler { public class
YOLOv11改进 | 主干/Backbone篇 | 轻量化目标检测网络MobileViTv1改进yolov11有效涨点
本文给大家带来的改进机制是MobileViT系列的V1版本,其作为MobileNet网络的挑战者,其效果自然不用多说,MobileViT模型是为移动设备设计的轻量级、通用目的视觉变换器。它融合了卷积神经网络(CNN)和视觉变换器(ViT)的优势,旨在在保持高效性能的同时减少模型参数和降低延迟。通过其创新的MobileViT Block和多尺度训练方法,MobileViT在多个视觉任务上取得了优异的结果,欢迎大家订阅本专栏,本专栏每周更新3-5篇最新机制,更有包含我所有改进的文件和交流群提供给大家。
ASP.net 生成验证码
一.说明 此文是小白在学习张晨光老师的视频教学<<Asp.Net WEB服务器编程技术>>中做的学习笔记,一些知识点也是跟着教程走的,大家也可以去老师的主页去学习,谢谢大家. 二.生成验证码图片(checkcode.aspx.cs) using System; using System.Collections.Generic; using System.Drawing; using System.Drawing.Imaging; using System.IO; using Syst
MATLAB基础应用精讲-【深度强化学习】SAC(Soft Actor-Critic)算法(附MATLAB和python代码实现)
Actor 网络:用于选择动作。Critic 1 和 Critic 2 网络:用于估计 Q 值。Target Critic 1 和 Target Critic 2:与 Critic 网络架构相同,用于生成更稳定的目标 Q 值。,即在保证探索的情况下选择高价值动作。软更新目标 Q 网络参数,使得目标网络参数缓慢向当前网络靠近,避免振荡。
制作你自己的yolov5数据集并进行训练
项目地址:make-your-yolov5_dataset 一、数据集标注软件 labelImg labelMe 精灵标注助手 更多的标注工具你可以去看:深度学习图像标注工具汇总 、 十个最常用深度学习图像/视频数据标注工具 、 百度一下 在这里我选择使用labelImg 二、数据集标注 下载labelImg 解压,直接打开labelimg.exe labelImg标注数据 标注完成后即可获得VOC格式(生成.xml文件)的数据 目录结构: dataset │ ├─Annotations .
ASP.Net生成简易验证码
创建一个名为ValidateCode.aspx的页面,粘贴以下代码即可Public Class ValidateCode Inherits System.Web.UI.Page#Region " Web 窗体设计器生成的代码 " 该调用是 Web 窗体设计器所必需的。 Private Sub InitializeComponent() End Sub
Data-Structures-and-Algorithm-Analysis-in-Java.pdf
作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...
asp.net中生成动态验证码代码
//前台 <td align="left"> <asp:Image ID="imgValidateCode" runat="server" ImageUrl="ImageCreate.aspx" Style="cursor:pointer;" onmouseup="RefreshImage()" alt="点击刷新!" /></td> ...
Statistics and Machine Learning Toolbox
Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具
假人有限元模型
假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用
ASP.NET Core 生成验证码
点击蓝字关注我使用验证码保护网站免受垃圾信息的选择有很多,比如Google ReCaptcha和captcha.com。这两者都可以整合到ASP.NET Core应用中去...
asp.net 生成验证码
一.前台页面 $(function() { $("#Image1").click(function() { var oldSrc = $(this).attr("src"); oldSrc += new Date().toString();
ASP.NET中动态生成验证码的一则方法
现在不少网站中都使用了验证码的技术,实现方式也是多种多样,这里主要介绍ASP.NET中可以采用的一种动态生成验证码的方法,可能并不十分完美,但实现难度是属于较低的。 该方法是利用了普通的动态图片生成技术,但比较特别的一点是图片的生成是在一个Page类型的子类的Page_Load方法中执行的。所以Response的ContentType为image/Gif,而非text/html。 Graphi
ASP.NET生成N位不同的验证码技术
如何使用ASP.NET编程方式生存N位不同的验证码技术是我们验证码程序员会遇到的一个小小问题。 今天我公司知码网专业技术编程人员就为您提供一份关于ASPNET的验证码生成技术,此技术可以完美解决N位不同验证码的生成技术,使得我们的服务器以及网站能够被很好的保护和与顾客的交互作用。 此段代码并不繁琐,有些ASP.NET语言基础的朋友可以很容易的就理解,主要是从生成随即函数中能够抽取然后进行匹配即
229



被折叠的 条评论
为什么被折叠?



