联通充值接口(自动识别验证码)程序源码发布

warning: 这篇文章距离上次修改已过567天,其中的内容可能已经有所变动。

联通充值接口(自动识别验证码)程序源码发布

             联通充值(自动识别验证码)程序源码发布

Powered BY Error Q:302777528http://www.qipanet.com
联通充值(免验证码)源程序.
 1.能提交手机号和卡密到联通网官方.
 2.实现全自动提交的功能
 3.能对自动提交手机号、卡密参数,验证码能自动识别。
 4.支持vb6,vc6,.net等开发平台调用
 

联通充值(自动识别验证码)程序源码发布 - web技术一起学 - web技术学吧

 
                          20110409 01:30  
///测试环境  .net3.5 win2003/xp/win7(测试均通过)
///开发工具 vs2008,vc6.0
接口文件:forVC.dll(c++调用时为forVC.tlb组件*)
类接口:myFace
类:Class1
成员函数: payCard(string strPhone, string strConfirmPhone, string

strCardPsw);
          strPhone:手机号
          strConfirmPhone:确认手机号
          strCardPsw:充值卡密码
          /*出错时返回对应错误信息,成功时提示充值卡金额,有效期*/
1.c++调用
Import Com即forVC.tlb
初始化Com
引用myFace
调用payCard(...)并传入相关参数
核心代码:
 myFacePtr myF(CLSID_Class1);
  _bstr_t str1;//返回结果
  str1=myF->payCard((_bstr_t)strPhoneNum,(_bstr_t)strConfirmPhoneNum,

(_bstr_t)strCardPwd);
 
  *说明:由于非.net语言不能直接调用.net下的dll.故需将dll先注册成com.
        在vs环境下编译会自动生成forVC.tlb
        在实际应用中,运行"注册COM工具"里的reg.bat即可自动注册并生成forVC.tlb(

必须保证forVC.dll与reg.bat在同一目录,
        默认生成的路径为c:\windows\system32),注册完成后"注册COM工具"目录下的

文件可移除.
 
2.c#调用
直接引用forVC.dll即可
           Class1 myClass = new Class1();
            lblStatus.Text = myClass.payCard(txtPhone.Text,

txtConfirmPhone.Text, txtCardPsw.Text);
            return;
           

3.附 部分错误提示(dll里会自动判断传入参数的合法性,调用前无需再判断)
 if (string.IsNullOrEmpty(pNum))
            {

                return "请输入手机号码";
            }
            else if (isMatch(pNum, "1[34568]\\d{9}$"))
            {
                return "请输入正确的手机号码";
            }
            else if (string.IsNullOrEmpty(confirmPNum))
            {
                return "请您输入确认手机号码";
            }
            else if (pNum = confirmPNum)
            {
                return "您两次输入的手机号码不一致,请您确认";
            }
            else if (cardPwd.Length = 19)
            {
                return "您输入的密码长度错误,请重新输入";
            }
            else if (string.IsNullOrEmpty(cardPwd))
            {
                return "请输入充值卡密码";
            }
            else if (isMatch(cardPwd, "\\d{19}$"))
            {
                return "卡密码必须为19位整数数字";
            }
            else if (string.IsNullOrEmpty(strVCode))
            {
                return "请输入验证码";
            }
            else if (strVCode.Length = 4)
            {
                return "验证码长度不正确";
            }

            return "";

Powered BY Error Q:302777528 http://

none
最后修改于:2023年05月08日 07:55

评论已关闭