用工行网银支付的时候,输入验证码的框框里有个叉叉,添加了控件也没有用,解决办法:
登陆IE的浏览器;
在菜单栏选择“工具”-“Internet选项”-“安全”-“Internet”(蓝色的地球)-“自定义级别”;
在打开的安全设置里找到带有ActiveX这个单词的选项,有“提示”的选“提示”,没有“提示”的选“启用”;
改好后确定;
再重新安装一遍个人网银控件,输入即可。
添加一个web窗体 然后将下面的代码添加进去 并重命名该窗体为checkCode aspx public class ValidateCode : System Web UI Page { private void Page_Load(object sender System EventArgs e) { this CreateCheckCodeImage(GenerateCheckCode()) } #region Web 窗体设计器生成的代码 override protected void OnInit(EventArgs e) { // // CODEGEN: 该调用是 ASP NET Web 窗体设计器所必需的 // InitializeComponent() base OnInit(e) } /// <summary> /// 设计器支持所需的方法 不要使用代码编辑器修改 /// 此方法的内容 /// </summary> private void InitializeComponent() { this Load += new System EventHandler(this Page_Load) } #endregion private string GenerateCheckCode() { int number char code string checkCode = String Empty System Random random = new Random() for(int i= i<i++) { number = random Next() if(number % == ) code = (char)( + (char)(number % )) else code = (char)( A + (char)(number % )) checkCode += code ToString() } Response Cookies Add(new HttpCookie( CheckCode checkCode)) return checkCode } private void CreateCheckCodeImage(string checkCode) { if(checkCode == null || checkCode Trim() == String Empty) return System Drawing Bitmap image = new System Drawing Bitmap((int)Math Ceiling((checkCode Length * )) ) Graphics g = Graphics FromImage(image) try { //生成随机生成器 Random random = new Random() //清空图片背景色 g Clear(Color White) //画图片的背景噪音线 for(int i= i<i++) { int x = random Next(image Width) int x = random Next(image Width) int y = random Next(image Height) int y = random Next(image Height) g DrawLine(new Pen(Color Silver) x y x y ) }Font font = new System Drawing Font( Arial (System Drawing FontStyle Bold | System Drawing FontStyle Italic)) System Drawing Drawing D LinearGradientBrush brush = new System Drawing Drawing D LinearGradientBrush(new Rectangle( image Width image Height) Color Blue Color DarkRed f true) g DrawString(checkCode font brush ) //画图片的前景噪音点 for(int i= i<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) image Width image Height ) 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() } } } 在你要显示验证码的窗体中添加一个image控件 并命名为imgCheckCode 用于显示验证码 再添加一个lable 并命名为lblMessage 用于显示错误信息 然后在该窗体的Page_Load中添加 this imgCheckCode ImageUrl = checkCode aspx 在登录页面的登录按钮的处理事件中使用以下代码判断验证码 private void btnLogin_Click(object sender System Web UI ImageClickEventArgs e) { if(Request Cookies[ checkCode ] == null) { lblMessage Text = 您的浏览器设置已被禁用 Cookies 您必须设置浏览器允许使用 Cookies 选项后才能使用本系统 lblMessage Visible = true return } if(String Compare(Request Cookies[ checkCode ] Value txtCheckCode Text true) != ) { lblMessage Text = 验证码错误 请输入正确的验证码 lblMessage Visible = true return } } 这样就能实现你所要的验证码验证了 lishixinzhi/Article/program/net/201311/13119
“Internet选项”-->“安全”标签,在“请为不同区域的Web内容制定安全设置(z)”窗口内选择“Internet”,然后选择“自定义级别”,将“Activex控件和插件”中“下载已签名的Activex控件”、“运行Activex控件”等设置为“启用”或“提示”,点击确定后,请重新启动电脑;
(2)若您安装了3721上网助手之类的软件,请您将其完全卸载;
(3)请您查看C:\WINNT\Downloaded Program Files文件夹,里面有InfoSecNetsingn Class和AxInputControl Class的属性,如果状态是已安装则正常。如果是已损坏或者为空,则建议您单击右键进行更新。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)