vb.net产生验证码 vb账号密码登录框验证

asp.net vb怎样制作图片验证码

实现过程,在需要调用的页面使用image控件调用验证码生成的页面,验证码生成的页面生成验证图片且将验证信息保存至Session中,调用页面中通过Session判断用户是否输入正确。道理是这样,以下看代码:

谢家集网站制作公司哪家好,找创新互联公司!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设等网站项目制作,到程序开发,运营维护。创新互联公司自2013年创立以来到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联公司

生成验证码页面:

gif.ASPx

%@importnamespace="System"%

%@importnamespace="System.io"%

%@importnamespace="System.Drawing"%

%@importnamespace="System.Drawing.Imaging"%

scriptlanguage="VB"runat="server"

SubPage_Load(ByValSenderAsObject,ByValeAsEventArgs)

'RndNum为生成随机码的函数,

DimVNumAsString=RndNum(4)'该值为生成验证码的位数

Session("VNum")=VNum'读取Session

ValidateCode(VNum) '根据Session生成图片

EndSub

'--------------------------------------------

'生成图象验证码函数

SubValidateCode(ByValVNum)

DimImgAsSystem.Drawing.Bitmap

DimgAsGraphics

DimmsAsMemoryStream

DimgheightAsInteger=Int(Len(VNum)*14)

'gheight为图片宽度,根据字符长度自动更改图片宽度

Img=NewBitmap(gheight,24)

g=Graphics.FromImage(Img)

g.DrawString(VNum,(NewFont("Arial",12)),(NewSolidBrush(Color.Red)),3,3)'在矩形内绘制字串(字串,字体,画笔颜色,左上x.左上y)

ms=NewMemoryStream()

Img.Save(ms,ImageFormat.Png)

Response.ClearContent()'需要输出图象信息要修改HTTP头

Response.ContentType="image/Png"

Response.BinaryWrite(ms.ToArray())

g.Dispose()

Img.Dispose()

Response.End()

EndSub

'--------------------------------------------

'函数名称:RndNum

'函数参数:VCodeNum--设定返回随机字符串的位数

'函数功能:产生数字和字符混合的随机字符串

FunctionRndNum(ByValVcodeNum)

DimVcharAsString="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,W,X,Y,Z"'需要使用中文验证,可以修改这里和ValidateCode函数中的字体

DimVcArray()AsString=Split(Vchar,",")'将字符串生成数组

DimVNumAsString=""

DimiAsByte

Fori=1ToVcodeNum

Randomize()

VNum=VNumVcArray(Int(35*Rnd()))'数组一般从0开始读取,所以这里为35*Rnd

Next

ReturnVNum

EndFunction

/script

调用页面:

demo.ASPx

scriptlanguage="VB"Runat="Server"

SubPage_Load(Senderasobject,easeventargs)

dimVNumasstring=Session("VNum")

Session.Abandon()

ViewState("VNum")=VNum

EndSub

'下面的事件代码是用来测试验证码

SubbtnSubmit_click(senderasobject,easeventargs)

'判断输入的验证码与所给是否相同

IftxtValidateCode.Text=CStr(ViewState("VNum"))Then

ensonShow.text="fontcolor='red'提示:验证通过/font"

Else

ensonShow.text="所填写的验证码与所给的不符"

EndIf

EndSub

/script

html

body

formrunat="server"

divalign="center"

tablewidth="750"

tr

tdvalign="middle"验证码:/td

!--调用验证图片生成页---

tdvalign="top"asp:Imageid="Image1"runat="server"ImageUrl="gif.aspx"//td

/tr

tr

tdvalign="top"输入验证码:/td

tdvalign="top"asp:textboxID="txtValidateCode"runat="server"TextMode="SingleLine"/fontcolor="#FF0000"size="2"*区分大小写/font/td

/tr

tr

tdcolspan="2"valign="top"align="center"asp:buttonID="btnSubmit"runat="server"Text="验证"onclick="btnSubmit_click"/

asp:labelID="ensonShow"runat="server"/

/td

/tr

/table

/div

/form

/body

/html

vb.net 做出类似这样的验证码 白色字体,字形扭曲

这个是可以使用api来做的。图像处理之类的函数。

另外,还有一种方法是将所有的字符和数字做成不同的小图片进行拼接而成的一个字符串序列;

小图片要自己去做;效果就可以任意展现了。

vb.net如何使用HttpWebRequest模拟登陆带验证码的网站

一般登陆网站时候首先要打开一个网页对吧?

那首先要 GET 一个网址。GetResponse后,得到的流就是这个页面的源码。

源码里肯定会包含这个验证码的提问段(可能是个图片的网址,也可能是个 5+5=? 之类的字符串之类的),可以分析一下这段代码出现的位置,让程序自动寻找。找到这个图片的网址,把这个图片 GET 下来,然后,就是orc识别或你人工识别咯。。。

vb.net 怎么将网页验证码显示在窗体上

Dim CtrlRange As Object

On Error Resume Next

Do

Err.Clear()

CtrlRange = Ie.Document.Body.DomElement.createControlRange()

CtrlRange.Add(Ie.Document.DomDocument.GetElementById("verifypic"))

CtrlRange.execCommand("Copy") '获取验证码

If Clipboard.ContainsData(DataFormats.Bitmap) Then

PictureBox1.Image = Clipboard.GetData(DataFormats.Bitmap) '在Picture1控件上显示

End If

If Err.Number 0 Then WaitingMS(100) ‘延时

Loop While Err.Number 0

以前找的 vbnet里也可以用


当前名称:vb.net产生验证码 vb账号密码登录框验证
URL地址:http://lszwz.com/article/doijojp.html

其他资讯

售后响应及时

7×24小时客服热线

数据备份

更安全、更高效、更稳定

价格公道精准

项目经理精准报价不弄虚作假

合作无风险

重合同讲信誉,无效全额退款