int C51JobWebPost::GetGateWayIP(CString &strIP) { DeleteObjectExEx(); CString strError = ""; CString strUrl = "www.ip138.com"; CString objectlink = "/ip2city.asp"; int iRet = RequestGetPageExExEx(strUrl,objectlink,m_strHeader, strError);//"148.233.239.24",3128,"","",0); if ( iRet != 0 ) { TRACE("获取页面出错"); ShowMessage("获取页面失败"); m_nErrorTime ++; DeleteObjectExEx(); return -1; } m_strWorkBuf.MakeLower(); if (m_strWorkBuf.Find("您的ip地址是:[") !=-1) { CString strBefore = "您的ip地址是:["; CString strAfter = "]"; strIP = GetKeyString(m_strWorkBuf,strBefore,strAfter); return 0; } return -1; }
__s32 GetFileListInfo(__hdle hConfig, const char *secName, char *type, char *SrcPath, char *DesPath) { __u32 ret; if ((NULL == hConfig) || (NULL == secName) || (NULL == type) || (NULL == SrcPath) || (NULL == DesPath)) { return EPDK_FAIL; } /* get filelist type information */ ret = GetKeyString((HCONFIG)hConfig, (s8 *)secName, (s8 *)FILE_LIST_TYPE_NAME, (s8 *)type); if (ret != OK) { __inf("GetKeyValue failed\n"); return EPDK_FAIL; } /* get filelist source path information */ ret = GetKeyString((HCONFIG)hConfig, (s8 *)secName, (s8 *)FILE_LIST_SRC_PATH_NAME, (s8 *)SrcPath); if (ret != OK) { __inf("GetKeyValue failed\n"); return EPDK_FAIL; } /* get filelist dest path information */ ret = GetKeyString((HCONFIG)hConfig, (s8 *)secName, (s8 *)FILE_LIST_DES_PATH_NAME, (s8 *)DesPath); if (ret != OK) { __inf("GetKeyValue failed\n"); return EPDK_FAIL; } return EPDK_OK; }
PGPError pgpKeyPassphraseCL( PGPContextRef context, CPGPKeyPassphraseDialogOptions *options) { PGPError err; GPP gpp; memset(&gpp,0x00,sizeof(GPP)); gpp.context=context; gpp.options=options; char szNameFinal[kPGPMaxUserIDSize]; GetKeyString(options->mDefaultKey, szNameFinal); fprintf(stdout, "\n%s\n", szNameFinal); while (1) { FreePassphrases(&gpp); gpp.pszPassPhrase = (char *)secAlloc (gpp.context, KEYSIZE); if (gpp.pszPassPhrase) { PGPInt32 len = pgpCLGetPass(stdout, gpp.pszPassPhrase, KEYSIZE); if (len < 0) { err = kPGPError_UserAbort; break; } *(options->mPassphrasePtr) = gpp.pszPassPhrase; if (PassphraseLengthAndQualityOK(options,gpp.pszPassPhrase)) { PGPBoolean PassValid; PassValid = PGPPassphraseIsValid(options->mDefaultKey, PGPOPassphrase(context, gpp.pszPassPhrase), PGPOLastOption(context)); if (PassValid) { err = kPGPError_NoErr; break; } else { fprintf(stdout, "Wrong passphrase, reenter\n"); } } else { ClearPassphrases(&gpp); FreePassphrases(&gpp); } } else { err = kPGPError_OutOfMemory; break; } } ClearPassphrases(&gpp); if (err != kPGPError_NoErr) FreePassphrases(&gpp); return(err); }
void CMainWnd::LoadPlsPlayList(LPTSTR pszFile) { TCHAR sz[MAX_PATH]; TCHAR szFile[MAX_PATH]; TCHAR szTitle[MAX_PATH] = {0}; #ifdef _UNICODE char szBuff[MAX_PATH * 2]; WideCharToMultiByte(CP_ACP, NULL, pszFile, -1, szBuff, MAX_PATH, NULL, NULL); FILE* fp = fopen(szBuff, "r"); #else FILE* fp = fopen(pszFile, "r"); #endif if (!fp) return; TCHAR szPath[MAX_PATH]; _tcscpy(szPath, pszFile); LPTSTR psz = _tcsrchr(szPath, _T('\\')); if (psz) *psz = NULL; #define SECTION_PLAYLIST _T("playlist") #define KEY_FILE _T("File%d") #define KEY_TITLE _T("Title%d") int nIndex = 1; while (TRUE) { // File wsprintf(sz, KEY_FILE, nIndex); if (!GetKeyString(fp, SECTION_PLAYLIST, sz, szFile)) break; // Title wsprintf(sz, KEY_TITLE, nIndex); GetKeyString(fp, SECTION_PLAYLIST, sz, szTitle); AddFile2(szPath, szFile, _tcslen(szTitle) ? szTitle: NULL); szTitle[0] = NULL; nIndex++; } fclose(fp); }
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { PAINTSTRUCT ps; HDC hdc; //LoadString(hInst, IDS_HELLO, szHello, MAX_LOADSTRING); switch (message) { case WM_KEYUP: case WM_KEYDOWN: case WM_SYSKEYUP: case WM_SYSKEYDOWN: { TCHAR* key = GetKeyString(wParam); if ((message == WM_KEYDOWN) || (message == WM_SYSKEYDOWN)) { counters[wParam]++; _stprintf(labelText,TEXT("%s (0x%x) pressed %d time(s)"),key,wParam,counters[wParam]); } else { counters[wParam]=0; _stprintf(labelText,TEXT("%s (0x%x) released"),key,wParam); } InvalidateRect(hWnd,NULL,TRUE); UpdateWindow(hWnd); } break; case WM_PAINT: hdc = BeginPaint(hWnd, &ps); // TODO: Add any drawing code here... RECT rt; GetClientRect(hWnd, &rt); DrawText(hdc, labelText, _tcslen(labelText), &rt, DT_CENTER); EndPaint(hWnd, &ps); break; case WM_DESTROY: PostQuitMessage(0); break; default: return DefWindowProc(hWnd, message, wParam, lParam); } return 0; }
__s32 GetFileListPrefix(__hdle hConfig, char *secPrefix) { __u32 ret; if ((NULL == hConfig) || (NULL == secPrefix)) { return EPDK_FAIL; } ret = GetKeyString((HCONFIG)hConfig, (s8 *)FILE_LIST_SECTION_NAME, (s8 *)FILE_LIST_SECTION_PREFIX_NAME, (s8 *)secPrefix); if (ret != OK) { __inf("GetKeyValue failed\n"); return EPDK_FAIL; } return EPDK_OK; }
PGPBoolean InitSigningKeyComboBox (CPGPKeySetPassphraseDialogOptions *options) { PGPKeyListRef KeyList; PGPKeyIterRef KeyIter; PGPKeyRef Key; PGPBoolean bSecret, bRevoked, bExpired, bCanSign; PGPBoolean bAtLeastOneSecretKey; char szNameFinal[kPGPMaxUserIDSize]; PGPOrderKeySet (options->mKeySet, kPGPValidityOrdering, &KeyList); PGPNewKeyIter (KeyList, &KeyIter); bAtLeastOneSecretKey = FALSE; PGPKeyIterNext (KeyIter, &Key); while (Key) { PGPGetKeyBoolean (Key, kPGPKeyPropIsSecret, &bSecret); if (bSecret) { PGPGetKeyBoolean (Key, kPGPKeyPropIsRevoked, (unsigned char *)&bRevoked); PGPGetKeyBoolean (Key, kPGPKeyPropIsExpired, (unsigned char *)&bExpired); PGPGetKeyBoolean (Key, kPGPKeyPropCanSign, (unsigned char *)&bCanSign); if (!bRevoked && !bExpired && bCanSign) { bAtLeastOneSecretKey = TRUE; GetKeyString(Key,szNameFinal); fprintf(stdout, "\n%s\n", szNameFinal); } } PGPKeyIterNext (KeyIter, &Key); } PGPFreeKeyIter (KeyIter); PGPFreeKeyList (KeyList); return (bAtLeastOneSecretKey); }
int C51JobWebPost::GetGateWayIP(CString &strIP) { CInternetSession session; CString strTemp = ""; char temp[1001] = {0}; CStdioFile *pFile = session.OpenURL("http://www.ip138.com/ip2city.asp"); if (pFile != NULL) { long len = pFile->GetLength(); if (len > 1000) { len = 1000; } pFile->SeekToBegin(); pFile->Read(temp,len); temp[len] = '\0'; strTemp.Format("%s",temp); strTemp.MakeLower(); if (strTemp.Find("您的ip地址是:[") !=-1) { CString strBefore = "您的ip地址是:["; CString strAfter = "]"; strIP = GetKeyString(strTemp,strBefore,strAfter); pFile->Close(); delete pFile; pFile = NULL; return 0; } if (pFile == NULL) { pFile->Close(); delete pFile; pFile = NULL; } } return -1; }
void CEffectDlg::LoadPresetFile(LPTSTR pszFile) { #ifdef _UNICODE char sz[MAX_PATH * 2]; WideCharToMultiByte(CP_ACP, NULL, pszFile, -1, sz, MAX_PATH * 2, NULL, NULL); FILE* fp = fopen(sz, "r"); #else FILE* fp = fopen(pszFile, "r"); #endif if (!fp) return; int i; EFFECT effect; EQUALIZER eq; TCHAR szBuf[MAX_PATH]; if (!GetKeyString(fp, SECTION_GSPLAYERW, KEY_EFFECT_VERSIONW, szBuf)) goto done; if (_tcstol(szBuf, NULL, 10) != VALUE_VERSION) goto done; MAP_GetEqualizer(m_hMap, &eq); if (GetKeyString(fp, SECTION_EQUALIZERW, KEY_ENABLEW, szBuf)) eq.fEnable = _tcstol(szBuf, NULL, 10); if (GetKeyString(fp, SECTION_EQUALIZERW, KEY_PREAMPW, szBuf)) eq.preamp = _tcstol(szBuf, NULL, 10); for (i = 0; i < 10; i++) { TCHAR szKey[64]; wsprintf(szKey, _T("%d"), i); if (GetKeyString(fp, SECTION_EQUALIZERW, szKey, szBuf)) eq.data[i] = _tcstol(szBuf, NULL, 10); } MAP_SetEqualizer(m_hMap, &eq); MAP_GetEffect(m_hMap, EFFECT_SURROUND, &effect); if (GetKeyString(fp, SECTION_SURROUNDW, KEY_ENABLEW, szBuf)) effect.fEnable = _tcstol(szBuf, NULL, 10); if (GetKeyString(fp, SECTION_SURROUNDW, KEY_RATEW, szBuf)) effect.nRate = _tcstol(szBuf, NULL, 10); MAP_SetEffect(m_hMap, EFFECT_SURROUND, &effect); MAP_GetEffect(m_hMap, EFFECT_3DCHORUS, &effect); if (GetKeyString(fp, SECTION_3DCHORUSW, KEY_ENABLEW, szBuf)) effect.fEnable = _tcstol(szBuf, NULL, 10); if (GetKeyString(fp, SECTION_3DCHORUSW, KEY_RATEW, szBuf)) effect.nRate = _tcstol(szBuf, NULL, 10); MAP_SetEffect(m_hMap, EFFECT_3DCHORUS, &effect); MAP_GetEffect(m_hMap, EFFECT_REVERB, &effect); if (GetKeyString(fp, SECTION_REVERBW, KEY_ENABLEW, szBuf)) effect.fEnable = _tcstol(szBuf, NULL, 10); if (GetKeyString(fp, SECTION_REVERBW, KEY_DELAYW, szBuf)) effect.nDelay = _tcstol(szBuf, NULL, 10); if (GetKeyString(fp, SECTION_REVERBW, KEY_RATEW, szBuf)) effect.nRate = _tcstol(szBuf, NULL, 10); MAP_SetEffect(m_hMap, EFFECT_REVERB, &effect); MAP_GetEffect(m_hMap, EFFECT_ECHO, &effect); if (GetKeyString(fp, SECTION_ECHOW, KEY_ENABLEW, szBuf)) effect.fEnable = _tcstol(szBuf, NULL, 10); if (GetKeyString(fp, SECTION_ECHOW, KEY_DELAYW, szBuf)) effect.nDelay = _tcstol(szBuf, NULL, 10); if (GetKeyString(fp, SECTION_ECHOW, KEY_RATEW, szBuf)) effect.nRate = _tcstol(szBuf, NULL, 10); MAP_SetEffect(m_hMap, EFFECT_ECHO, &effect); i = MAP_GetBassBoostLevel(m_hMap); if (GetKeyString(fp, SECTION_BASSBOOSTW, KEY_RATEW, szBuf)) i = _tcstol(szBuf, NULL, 10); MAP_SetBassBoostLevel(m_hMap, i); done: fclose(fp); }
//用户登录 bool C51JobWebPost::UserRegister() { try { CString strError = ""; CString sendStr = ""; CString objectlink = ""; CString strHeaders = m_strHeader; int iRet = -1; CString postStr = ""; CString strShow = ""; while(!g_ExitFlag) { try { RegisterPack rgPack; int iRet = GetRegisterPack(rgPack); if (iRet == -1) { Sleep(700); continue; } else if (iRet == -2) { Sleep(2000); continue; } iRet = -1; CString strTime = CTime::GetCurrentTime().Format("%m%d%H%M%S"); Sleep(10); rgPack.strIp = g_strCurrIP; m_iCheckFlag = 0; g_strCheckCode = ""; if (m_iCheckFlag == 0) { rgPack.iStatus = 2; ShowMessage("正在验证: " + rgPack.strAcc); long lStart = GetTickCount(); CString strHeaders = m_strHeader; m_strServerURL = "www.ip138.com"; objectlink = "/ip2city.asp"; objectlink.Format("/ip2city.asp?time=%ld",GetTickCount()); iRet = RequestGetPageExExEx(m_strServerURL,objectlink,strHeaders, strError,0,1,0,rgPack.strAcc,atoi(rgPack.strPwd),"",""); if (iRet != 0) { ShowMessage("验证失败"); m_nErrorTime ++; DeleteObjectExEx(); rgPack.strMemo = "失败"; AddToShowList(rgPack); DeleteRegisterPack(rgPack); return false; } else { DeleteObjectExEx(); m_strWorkBuf.MakeLower(); int iPos = m_strWorkBuf.Find(rgPack.strAcc); if(iPos < 0) { CString strTemp = ""; CString strBefore = "您的ip地址是:["; CString strAfter = "]"; strTemp = GetKeyString(m_strWorkBuf,strBefore,strAfter); //您的IP地址是:[111.1.32.23] rgPack.strMemo = strTemp; AddToShowList(rgPack); DeleteRegisterPack(rgPack); return false; } rgPack.iStatus = 1; AddToShowList(rgPack); DeleteRegisterPack(rgPack); return true; } m_iCheckFlag = 0; objectlink.Format("/RegNumCode.asp?time=%s",strTime); //http://www.oule365.com/RegNumCode.asp //strHeaders = m_strHeader + "\r\nReferer:http://www.dajiale365.com/reg.shtml"; strHeaders = m_strHeader + "\r\nReferer:http://www.oule365.com/reg.shtml"; //http://www.oule365.com/reg.shtml iRet = RequestGetPageExExEx(m_strServerURL,objectlink,strHeaders, strError,1,1,0,"",0,"",""); // if (iRet != 0) { ShowMessage("获取验证码失败"); m_nErrorTime ++; DeleteObjectExEx(); return false; } else { ShowMessage("获取验证码成功"); strShow.Format("正在注册:%s %s",rgPack.strAcc,rgPack.strPwd); ShowMessage(strShow); } } while(!g_ExitFlag) { if ( g_strCheckCode != "") { break; } Sleep(100); } if (g_ExitFlag) { DeleteObjectExEx(); return false; } CString strFailReason = ""; CString strCheckCode = g_strCheckCode; if (strCheckCode == "r") { continue; } objectlink = "/Function.asp"; // switch (g_iRegWebFlag) // { // case 0: // strHeaders = m_strHeader + "\r\nReferer:http://www.7ple.com/reg.jhtml?siteID=11"; // break; // case 1: // strHeaders = m_strHeader + "\r\nReferer:http://www.7pmi.com/reg.jhtml?siteID=11"; // break; // case 2: // default: // strHeaders = m_strHeader + "\r\nReferer:http://www.7psw.com/reg.jhtml?siteID=18"; // break; // } strHeaders = m_strHeader + "\r\nReferer:http://www.oule365.com/reg.shtml"; strHeaders += "\r\nx-requested-with: XMLHttpRequest"; strHeaders += "\r\nUA-CPU:x86"; // //x-requested-with:XMLHttpRequest //strHeaders += "\r\nx-requested-with: XMLHttpRequest"; //strHeaders += "\r\nContent-Type: application/x-www-form-urlencoded"; //strCheckCode = "需儿感价"; strCheckCode = NativeToAscii(strCheckCode); //strCheckCode = "确学装衣"; //ConvertGBKToUtf8(strCheckCode); //m_strMac.MakeUpper(); // switch (g_iRegWebFlag) // { // case 0: // ConvertGBKToUtf8(strCheckCode); // strCheckCode = URLEncode(strCheckCode); // postStr.Format("username=%s&password=%s&repassword=%s&sex=1&myhead=1&email=%s&siteID=11&7pmiReferrerUrl=&7pmiLocalUrl=&selfinfo=&machineserial=%s&transactionid=%s&verify=%s&ptvodaccounts=&introducer=%s&checkcode=%s&agree=on",rgPack.strAcc,rgPack.strPwd,rgPack.strPwd,rgPack.strMail,m_strMac,m_strTrans,m_strVerify,rgPack.strNickName,strCheckCode); // break; // case 1: // postStr.Format("username=%s&password=%s&repassword=%s&sex=1&myhead=1&email=%s&siteID=11&7pmiReferrerUrl=&7pmiLocalUrl=&selfinfo=&machineserial=%s&transactionid=%s&verify=%s&ptvodaccounts=&introducer=%s&checkcode=%s&agree=on",rgPack.strAcc,rgPack.strPwd,rgPack.strPwd,rgPack.strMail,m_strMac,m_strTrans,m_strVerify,rgPack.strNickName,strCheckCode); // break; // case 2: // default: // ConvertGBKToUtf8(strCheckCode); // strCheckCode = URLEncode(strCheckCode); // postStr.Format("username=%s&password=%s&repassword=%s&sex=1&myhead=1&email=%s&siteID=18&7pmiReferrerUrl=&7pmiLocalUrl=&selfinfo=&machineserial=%s&transactionid=%s&verify=%s&ptvodaccounts=&introducer=%s&checkcode=%s&agree=on",rgPack.strAcc,rgPack.strPwd,rgPack.strPwd,rgPack.strMail,m_strMac,m_strTrans,m_strVerify,rgPack.strNickName,strCheckCode); // break; // } //rgPack.strName = (strCheckCode); //%u9700%u513F%u611F%u4EF7 postStr.Format("action=userreg&uname=%s&upwd=%s&confirm_upwd=%s&srcname=%s&boy=1&fullname=%s&zhengjian=%s&mophone=%s&spread=&ucode=%s&twopass=&confirm_twopass=&email=&protocol=on", rgPack.strAcc, rgPack.strPwd, rgPack.strPwd, rgPack.strNickName, rgPack.strName, rgPack.strIntroMan, rgPack.strMail, //手机号码 strCheckCode); iRet = RequestPostPageExExEx(m_strServerURL,objectlink,strHeaders,postStr,strError,0,1,0,"",0,"","");// //m_strServerURL,objectlink,strHeaders, //strError,1,1,0,strIP,iPort,"","" if ( iRet != 0 ) { TRACE("POST出错"); m_nErrorTime ++; DeleteObjectExEx(); return false; } m_strWorkBuf.MakeLower(); int iPos = m_strWorkBuf.Find("^|^"); if ( iPos >= 0) { ShowMessage("注册成功"); rgPack.iStatus = 1; rgPack.strMemo = "成功"; strShow.Format("%s,%s,",rgPack.strAcc,rgPack.strPwd); WriteLog(strShow,0); //保存注册成功的账号进数据库 // iRet = WriteToBase(rgPack,g_iRegWebFlag); // if (iRet != 0) // { // WriteLog(strShow,3); // } m_iIpSuccNum++; if (m_iIpSuccNum >= g_iIpRegNum) { if (g_iAotuChangeIp) { ShowMessage("单一IP注册数已达上限,正在切换IP..."); } if (g_iIsChangeMac) { ShowMessage("单一MAC地址注册数已达上限,正在切换MAC地址..."); } m_iNeedChageIP = 1; m_iIpSuccNum = 0; //m_iIsNeedChangeMac = 1; } } else {//注册失败 CString strBefore = "<div align=\"center\"><font color='red'>"; CString strAfter = "</font></div>"; strFailReason = m_strWorkBuf; ShowMessage("注册失败: "+strFailReason); rgPack.iStatus = 2; rgPack.strMemo = strFailReason; if (strFailReason.Find("同一ip注册时间间隔") != -1) { ShowMessage("单一IP注册数已达上限,正在切换IP地址..."); m_iNeedChageIP = 1; m_iIpSuccNum = 0; } } AddToShowList(rgPack); if (g_iDeleteFlag == 1) { if (strFailReason.Find("请输入正确的验证码")<0) { DeleteRegisterPack(rgPack); } else { m_iCodeErrorNum ++; if (m_iCodeErrorNum >= g_iCodeErrorNum) { ShowMessage("验证码错误次数到达上限,跳过此账号的注册"); DeleteRegisterPack(rgPack); m_iCodeErrorNum = 0; } } } else { DeleteRegisterPack(rgPack); } #ifdef DEBUG m_iNeedChageIP = 1; #endif if (m_iNeedChageIP == 1) //换IP { DeleteObjectExEx(); return false; } if (m_iIsNeedChangeMac == 1) //换MAC地址 { DeleteObjectExEx(); return false; } } catch (...) { DeleteObjectExEx(); return false; } } return false; } catch (...) { } DeleteObjectExEx(); return false; }
void CSkin::Load(LPCTSTR pszFile) { Unload(); FILE* fp = NULL; COLORREF cr; TCHAR szBuff[MAX_PATH]; TCHAR szBase[MAX_PATH]; TCHAR szPath[MAX_PATH]; HINSTANCE hInst = GetInst(); *szBase = NULL; if (pszFile && _tcslen(pszFile)) { // ファイルを開く #ifdef _UNICODE char szFile[MAX_PATH * 2]; WideCharToMultiByte(CP_ACP, NULL, pszFile, -1, szFile, MAX_PATH, NULL, NULL); fp = fopen(szFile, "r"); #else fp = fopen(pszFile, "r"); #endif _tcscpy(szBase, pszFile); LPTSTR p = _tcsrchr(szBase, _T('\\')); if (p) *(p + 1) = NULL; } // Version int nVersion = SKIN_CURRENT_VERSION; if (GetKeyString(fp, SECTION_SKIN, KEY_VERSION, szBuff)) nVersion = _tcstol(szBuff, NULL, 10); // Background GetKeyString(fp, SECTION_SKIN, KEY_BKGROUND, szBuff); wsprintf(szPath, _T("%s%s"), szBase, szBuff); m_hbmpBkgnd = LoadBitmap(szPath); #ifndef _WIN32_WCE_PPC if (!m_hbmpBkgnd) m_hbmpBkgnd = ::LoadBitmap(hInst, (LPCTSTR)IDB_BACK); #endif // Number GetKeyString(fp, SECTION_SKIN, KEY_NUMBER, szBuff); wsprintf(szPath, _T("%s%s"), szBase, szBuff); m_himlImageLists[IMAGELIST_NUMBER] = LoadImageList(IML_NUMBER_WIDTH, IML_NUMBER_HEIGHT, szPath, IDB_NUMBER); // Status GetKeyString(fp, SECTION_SKIN, KEY_STATUS, szBuff); wsprintf(szPath, _T("%s%s"), szBase, szBuff); m_himlImageLists[IMAGELIST_STATUS] = LoadImageList(IML_STATUS_WIDTH, IML_STATUS_HEIGHT, szPath, IDB_STATUS); // PlayOption GetKeyString(fp, SECTION_SKIN, KEY_PLAYOPT, szBuff); wsprintf(szPath, _T("%s%s"), szBase, szBuff); m_himlImageLists[IMAGELIST_PLAYOPT] = LoadImageList(IML_PLAYOPT_WIDTH, IML_PLAYOPT_HEIGHT, szPath, IDB_PLAYOPTION); // Disp GetKeyString(fp, SECTION_SKIN, KEY_DISP, szBuff); if (_tcslen(szBuff)) m_fDispVisible = _tcstol(szBuff, 0, 10) ? TRUE : FALSE; // DispColor GetKeyString(fp, SECTION_SKIN, KEY_DISPCOLOR, szBuff); cr = StrToColor(szBuff); if (cr != -1) m_nColors[COLOR_DISP] = cr; // PeekColorL GetKeyString(fp, SECTION_SKIN, KEY_PEEKCOLORL, szBuff); cr = StrToColor(szBuff); if (cr != -1) m_nColors[COLOR_PEEKL] = cr; // PeekColorR GetKeyString(fp, SECTION_SKIN, KEY_PEEKCOLORR, szBuff); cr = StrToColor(szBuff); if (cr != -1) m_nColors[COLOR_PEEKR] = cr; // InfoColor GetKeyString(fp, SECTION_SKIN, KEY_INFOCOLOR, szBuff); cr = StrToColor(szBuff); if (cr != -1) m_nColors[COLOR_INFO] = cr; // TitleColor GetKeyString(fp, SECTION_SKIN, KEY_TITLECOLOR, szBuff); cr = StrToColor(szBuff); if (cr != -1) m_nColors[COLOR_TITLE] = cr; // SeekColor GetKeyString(fp, SECTION_SKIN, KEY_SEEKCOLOR, szBuff); cr = StrToColor(szBuff); if (cr != -1) m_nColors[COLOR_SEEK] = cr; if (nVersion < SKIN_CURRENT_VERSION) { // Button GetKeyString(fp, SECTION_SKIN, KEY_BUTTON, szBuff); wsprintf(szPath, _T("%s%s"), szBase, szBuff); m_himlImageLists[IMAGELIST_BUTTON] = LoadImageList(IML_BUTTON_WIDTH, IML_BUTTON_HEIGHT, szPath, IDB_BUTTON); } else { // ButtonNormal GetKeyString(fp, SECTION_SKIN, KEY_BUTTONNORMAL, szBuff); wsprintf(szPath, _T("%s%s"), szBase, szBuff); m_himlImageLists[IMAGELIST_BUTTON_NORMAL] = LoadImageList(IML_BUTTON2_WIDTH, IML_BUTTON2_HEIGHT, szPath, IDB_BUTTON_NORMAL); // ButtonPush GetKeyString(fp, SECTION_SKIN, KEY_BUTTONPUSH, szBuff); wsprintf(szPath, _T("%s%s"), szBase, szBuff); m_himlImageLists[IMAGELIST_BUTTON_PUSH] = LoadImageList(IML_BUTTON2_WIDTH, IML_BUTTON2_HEIGHT, szPath, IDB_BUTTON_PUSH); // VolumeSlider GetKeyString(fp, SECTION_SKIN, KEY_VOLUME_SLIDER, szBuff); wsprintf(szPath, _T("%s%s"), szBase, szBuff); m_himlImageLists[IMAGELIST_VOLSLIDER] = LoadImageList(IML_VOLSLIDER_WIDTH, IML_VOLSLIDER_HEIGHT, szPath, IDB_VOLSLIDER); // VolumeTrack GetKeyString(fp, SECTION_SKIN, KEY_VOLUME_TRACK, szBuff); wsprintf(szPath, _T("%s%s"), szBase, szBuff); m_himlImageLists[IMAGELIST_VOLTRACK] = LoadImageList(IML_VOLTRACK_WIDTH, IML_VOLTRACK_HEIGHT, szPath, IDB_VOLTRACK); } if (fp) fclose(fp); }
//用户登录 bool C51JobWebPost::UserRegister() { try { switch (g_iRegWebFlag) { case 0: m_strServerURL = "www.7ple.com"; break; case 1: m_strServerURL = "www.7pmi.com"; break; case 2: default: m_strServerURL = "www.7psw.com"; break; } CString strError = ""; CString sendStr = ""; ShowMessage("正在获取注册页面..."); CString objectlink = ""; switch (g_iRegWebFlag) { case 0: objectlink = "/reg.jhtml?siteID=11"; break; case 1: objectlink = "/reg.jhtml?siteID=11"; break; case 2: default: objectlink = "/reg.jhtml?siteID=18"; break; } //TestProxy(); CString strHeaders = m_strHeader; m_strServerURL = "www.ip138.com"; objectlink = "/ip2city.asp"; int iRet = RequestGetPageExExEx(m_strServerURL,objectlink,strHeaders, strError,0,1,0,"122.205.95.14",80,"",""); //int iRet = RequestGetPage(m_Session,m_pConnection,m_strServerURL,objectlink,strHeaders); // int iRet = RequestGetPageExExEx(m_strServerURL,objectlink,strHeaders, // strError,0,1,0,"125.41.181.59",8080,"",""); if ( iRet != 0 ) { TRACE("获取页面出错"); ShowMessage("获取注册页面失败"); m_nErrorTime ++; DeleteObjectExEx(); return false; } m_strWorkBuf.MakeLower(); //AfxMessageBox(m_strWorkBuf.Right(m_strWorkBuf.GetLength() - 200)); //检查是否打开简历管理页 int iPos = m_strWorkBuf.Find("找回密码用"); if (iPos >= 0) { ShowMessage("成功获取注册页,正在获取验证码..."); } else { return false; } CString postStr = ""; CString strShow = ""; while(!g_ExitFlag) { try { RegisterPack rgPack; int iRet = GetRegisterPack(rgPack); if (iRet == -1) { Sleep(700); continue; } else if (iRet == -2) { Sleep(2000); continue; } /************************************************************************/ /* 更换验证字符串 */ /************************************************************************/ iRet = GetFirstUsefulKey(); if (iRet != 0) { Sleep(1000); continue; } m_strMac.MakeUpper(); ShowMessage("模拟验证信息:"+m_strMac + "," + m_strTrans +","+m_strVerify); /************************************************************************/ /* 此处先获取注册页面的信息,以备填充 */ /************************************************************************/ //HWND hwnd = ::FindWindow("IEFrame","棋牌乐 - 注册帐号 - Microsoft Internet Explorer"); rgPack.strIp = g_strCurrIP; m_iCheckFlag = 0; g_strCheckCode = ""; if (m_iCheckFlag == 0) { //删除旧的验证码 if (_access(g_strDirect+g_strFileName,0) == 0) { CFile::Remove(g_strDirect+g_strFileName); } ShowMessage("正在获取验证码..."); m_iCheckFlag = 0; objectlink = "/NewRegValidateCode"; //strHeaders = m_strHeader + "\r\nReferer:http://www.dajiale365.com/reg.shtml"; iRet = RequestGetPageExExEx(m_strServerURL,objectlink,strHeaders,strError,1); if (iRet != 0) { ShowMessage("获取验证码失败"); m_nErrorTime ++; DeleteObjectExEx(); return false; } else { ShowMessage("获取验证码成功"); strShow.Format("正在注册:%s %s",rgPack.strAcc,rgPack.strPwd); ShowMessage(strShow); } } while(!g_ExitFlag) { if ( g_strCheckCode != "") { break; } Sleep(100); } if (g_ExitFlag) { DeleteObjectExEx(); return false; } CString strFailReason = ""; CString strCheckCode = g_strCheckCode; if (strCheckCode == "r") { continue; } objectlink = "/regAction.jhtml"; switch (g_iRegWebFlag) { case 0: strHeaders = m_strHeader + "\r\nReferer:http://www.7ple.com/reg.jhtml?siteID=11"; break; case 1: strHeaders = m_strHeader + "\r\nReferer:http://www.7pmi.com/reg.jhtml?siteID=11"; break; case 2: default: strHeaders = m_strHeader + "\r\nReferer:http://www.7psw.com/reg.jhtml?siteID=18"; break; } //strHeaders += "\r\nx-requested-with: XMLHttpRequest"; //strHeaders += "\r\nContent-Type: application/x-www-form-urlencoded"; CString strTime = CTime::GetCurrentTime().Format("%m%d%H%M%S"); //strCheckCode = NativeToAscii(strCheckCode); //strCheckCode = "确学装衣"; //ConvertGBKToUtf8(strCheckCode); rgPack.strMail = ""; switch (g_iRegWebFlag) { case 0: ConvertGBKToUtf8(strCheckCode); strCheckCode = URLEncode(strCheckCode); postStr.Format("username=%s&password=%s&repassword=%s&sex=1&myhead=1&email=%s&siteID=11&7pmiReferrerUrl=&7pmiLocalUrl=&selfinfo=&machineserial=%s&transactionid=%s&verify=%s&ptvodaccounts=&introducer=%s&checkcode=%s&agree=on",rgPack.strAcc,rgPack.strPwd,rgPack.strPwd,rgPack.strMail,m_strMac,m_strTrans,m_strVerify,rgPack.strNickName,strCheckCode); break; case 1: postStr.Format("username=%s&password=%s&repassword=%s&sex=1&myhead=1&email=%s&siteID=11&7pmiReferrerUrl=&7pmiLocalUrl=&selfinfo=&machineserial=%s&transactionid=%s&verify=%s&ptvodaccounts=&introducer=%s&checkcode=%s&agree=on",rgPack.strAcc,rgPack.strPwd,rgPack.strPwd,rgPack.strMail,m_strMac,m_strTrans,m_strVerify,rgPack.strNickName,strCheckCode); break; case 2: default: ConvertGBKToUtf8(strCheckCode); strCheckCode = URLEncode(strCheckCode); postStr.Format("username=%s&password=%s&repassword=%s&sex=1&myhead=1&email=%s&siteID=18&7pmiReferrerUrl=&7pmiLocalUrl=&selfinfo=&machineserial=%s&transactionid=%s&verify=%s&ptvodaccounts=&introducer=%s&checkcode=%s&agree=on",rgPack.strAcc,rgPack.strPwd,rgPack.strPwd,rgPack.strMail,m_strMac,m_strTrans,m_strVerify,rgPack.strNickName,strCheckCode); break; } iRet = RequestPostPageExExEx(m_strServerURL,objectlink,strHeaders,postStr,strError,0);// if ( iRet != 0 ) { TRACE("POST出错"); m_nErrorTime ++; DeleteObjectExEx(); return false; } m_strWorkBuf.MakeLower(); iPos = m_strWorkBuf.Find("注册成功"); if ( iPos >= 0) { ShowMessage("注册成功"); rgPack.iStatus = 1; rgPack.strMemo = "成功"; strShow.Format("%s,%s,",rgPack.strAcc,rgPack.strPwd); WriteLog(strShow,0); //保存注册成功的账号进数据库 // iRet = WriteToBase(rgPack,g_iRegWebFlag); // if (iRet != 0) // { // WriteLog(strShow,3); // } m_iIpSuccNum++; if (m_iIpSuccNum >= g_iIpRegNum) { if (g_iAotuChangeIp) { ShowMessage("单一IP注册数已达上限,正在切换IP..."); } ShowMessage("单一M验证数据注册数已达上限,正在切换验证数据..."); DisableKey(m_iID); m_iNeedChageIP = 1; m_iIpSuccNum = 0; //m_iIsNeedChangeMac = 1; //continue; } } else {//注册失败 CString strBefore = "<div align=\"center\"><font color='red'>"; CString strAfter = "</font></div>"; strFailReason = GetKeyString(m_strWorkBuf,strBefore,strAfter); ShowMessage("注册失败: "+strFailReason); rgPack.iStatus = 2; rgPack.strMemo = strFailReason; //此处找到单机已经达到上限字符串,获取下一组特征码 if (strFailReason.Find("您的注册速度太快") != -1 || strFailReason.Find("日注册量已达到当日限额") != -1) { DisableKey(m_iID); m_iNeedChageIP = 1; m_iIpSuccNum = 0; } } AddToShowList(rgPack); if (g_iDeleteFlag == 1) { if (strFailReason.Find("验证码输入错误")<0) { DeleteRegisterPack(rgPack); } else { m_iCodeErrorNum ++; if (m_iCodeErrorNum >= g_iCodeErrorNum) { ShowMessage("验证码错误次数到达上限,跳过此账号的注册"); DeleteRegisterPack(rgPack); m_iCodeErrorNum = 0; } } } else { DeleteRegisterPack(rgPack); } #ifdef DEBUG m_iNeedChageIP = 1; #endif if (m_iNeedChageIP == 1) //换IP { DeleteObjectExEx(); return false; } // if (m_iIsNeedChangeMac == 1) //换MAC地址 // { // DeleteObjectExEx(); // return false; // } } catch (...) { DeleteObjectExEx(); return false; } } return false; } catch (...) { } DeleteObjectExEx(); return false; }
BOOL InitSigningKeyComboBox (HWND hDlg, CPGPKeySetPassphraseDialogOptions *options) { PGPKeyListRef KeyList; PGPKeyIterRef KeyIter; PGPKeyRef Key; PGPKeyRef KeyDefault; UINT uIndex; INT iKeyDefault, iKeySelected; PGPBoolean bSecret, bRevoked, bExpired, bCanSign; BOOL bAtLeastOneSecretKey; CHAR szNameFinal[kPGPMaxUserIDSize]; HDC hdc; RECT rc; INT iComboWidth; HFONT hFont; PGPOrderKeySet (options->mKeySet, kPGPValidityOrdering, &KeyList); PGPNewKeyIter (KeyList, &KeyIter); PGPGetDefaultPrivateKey (options->mKeySet, &KeyDefault); SendDlgItemMessage (hDlg, IDC_SIGNKEYCOMBO, CB_GETDROPPEDCONTROLRECT, 0, (LPARAM)&rc); iComboWidth = rc.right-rc.left - GetSystemMetrics (SM_CXVSCROLL); hdc = GetDC (GetDlgItem (hDlg, IDC_SIGNKEYCOMBO)); hFont = (HFONT)GetStockObject (DEFAULT_GUI_FONT); SelectObject (hdc, hFont); iKeySelected = -1; iKeyDefault = 0; bAtLeastOneSecretKey = FALSE; PGPKeyIterNext (KeyIter, &Key); while (Key) { PGPGetKeyBoolean (Key, kPGPKeyPropIsSecret, &bSecret); if (bSecret) { PGPGetKeyBoolean (Key, kPGPKeyPropIsRevoked, (unsigned char *)&bRevoked); PGPGetKeyBoolean (Key, kPGPKeyPropIsExpired, (unsigned char *)&bExpired); PGPGetKeyBoolean (Key, kPGPKeyPropCanSign, (unsigned char *)&bCanSign); if (!bRevoked && !bExpired && bCanSign) { bAtLeastOneSecretKey = TRUE; GetKeyString(hdc,iComboWidth,Key,szNameFinal); uIndex = SendDlgItemMessage (hDlg, IDC_SIGNKEYCOMBO, CB_ADDSTRING, 0, (LPARAM)szNameFinal); if (uIndex != CB_ERR) { SendDlgItemMessage (hDlg, IDC_SIGNKEYCOMBO, CB_SETITEMDATA, uIndex, (LPARAM)Key); if (options->mDefaultKey) { if (Key == options->mDefaultKey) iKeySelected = uIndex; } if (Key == KeyDefault) iKeyDefault = uIndex; } } } PGPKeyIterNext (KeyIter, &Key); } PGPFreeKeyIter (KeyIter); PGPFreeKeyList (KeyList); if (iKeySelected == -1) iKeySelected = iKeyDefault; SendDlgItemMessage (hDlg, IDC_SIGNKEYCOMBO, CB_SETCURSEL, iKeySelected, 0); ReleaseDC (GetDlgItem (hDlg, IDC_SIGNKEYCOMBO), hdc); return (bAtLeastOneSecretKey); }
BOOL CALLBACK pgpKeyPassphraseDlgProc ( HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) { CPGPKeyPassphraseDialogOptions *options; GPP *gpp; INT i; DWORD Common; Common=DoCommonCalls (hDlg,uMsg,wParam,lParam); if(Common) return Common; switch (uMsg) { case WM_INITDIALOG: { RECT rc; int iTextWidth; HDC hdc; char szNameFinal[kPGPMaxUserIDSize]; gpp=(GPP *)GetWindowLong (hDlg, GWL_USERDATA); options = (CPGPKeyPassphraseDialogOptions *) gpp->options; gpp->iNextTabControl = IDOK; gpp->wpOrigPhrase1Proc = (WNDPROC) SetWindowLong( GetDlgItem(hDlg, IDC_PHRASE1), GWL_WNDPROC, (LONG) PhraseSubclassProc); GetClientRect(GetDlgItem(hDlg,IDC_KEYNAME), &rc); iTextWidth = rc.right-rc.left; hdc = GetDC (GetDlgItem(hDlg,IDC_KEYNAME)); GetKeyString(hdc,iTextWidth,options->mDefaultKey,szNameFinal); SetWindowText(GetDlgItem(hDlg,IDC_KEYNAME),szNameFinal); ReleaseDC (GetDlgItem (hDlg, IDC_KEYNAME), hdc); gpp->hwndOptionsControl=DisplayOptions(hDlg,options->mDialogOptions,130); return FALSE; } case WM_COMMAND: { gpp=(GPP *)GetWindowLong (hDlg, GWL_USERDATA); options = (CPGPKeyPassphraseDialogOptions *) gpp->options; switch (LOWORD (wParam)) { case IDOK: { PGPBoolean PassValid; FreePassphrases(gpp); i = SendDlgItemMessage (hDlg, IDC_PHRASE1, WM_GETTEXTLENGTH, 0, 0) +1; gpp->szDummy = (char *)secAlloc (gpp->context, i); if(gpp->szDummy) { gpp->pszPassPhrase = (char *)secAlloc (gpp->context, i); if (gpp->pszPassPhrase) { GetDlgItemText (hDlg, IDC_PHRASE1, gpp->szDummy, i); if(PassphraseLengthAndQualityOK(hDlg,options,gpp->pszPassPhrase)) { if(!options->mVerifyPassphrase) { ClearPassphrases(hDlg,gpp); SaveOptionSettings(gpp->hwndOptionsControl); EndDialog (hDlg, kPGPError_NoErr); break; } PassValid=PGPPassphraseIsValid (options->mDefaultKey, PGPOPassphrase (gpp->context, gpp->pszPassPhrase), PGPOLastOption (gpp->context)); if(PassValid) { ClearPassphrases(hDlg,gpp); SaveOptionSettings(gpp->hwndOptionsControl); EndDialog (hDlg, kPGPError_NoErr); break; } else { PGPsdkUIMessageBox (hDlg, IDS_PGPERROR,IDS_BADPASSREENTER, MB_OK|MB_ICONSTOP); } } // Bad passphrase/quality ClearPassphrases(hDlg,gpp); FreePassphrases(gpp); break; } } // Couldn't allocate passphrases ClearPassphrases(hDlg,gpp); FreePassphrases(gpp); EndDialog (hDlg, kPGPError_OutOfMemory); break; } } } break; } return FALSE; }
//用户登录 bool C51JobWebPost::UserRegister() { try { switch (g_iRegWebFlag) { case 0: m_strServerURL = "www.7ple.com"; break; case 1: m_strServerURL = "www.7pmi.com"; break; case 2: default: m_strServerURL = "www.7psw.com"; break; } CString strError = ""; CString sendStr = ""; ShowMessage("正在获取注册页面..."); CString objectlink = ""; switch (g_iRegWebFlag) { case 0: objectlink = "/reg.jhtml?siteID=11"; break; case 1: objectlink = "/reg.jhtml?siteID=11"; break; case 2: default: objectlink = "/reg.jhtml?siteID=18"; break; } CString strHeaders = m_strHeader; //int iRet = RequestGetPage(m_Session,m_pConnection,m_strServerURL,objectlink,strHeaders); int iRet = RequestGetPageExExEx(m_strServerURL,objectlink,strHeaders, strError);//"148.233.239.24",3128,"","",0); if ( iRet != 0 ) { TRACE("获取页面出错"); ShowMessage("获取注册页面失败"); m_nErrorTime ++; DeleteObjectExEx(); return false; } m_strWorkBuf.MakeLower(); //AfxMessageBox(m_strWorkBuf.Right(m_strWorkBuf.GetLength() - 200)); //检查是否打开简历管理页 int iPos = m_strWorkBuf.Find("找回密码用"); if (iPos >= 0) { ShowMessage("成功获取注册页,正在获取验证码..."); } else { return false; } CString postStr = ""; CString strShow = ""; while(!g_ExitFlag) { try { RegisterPack rgPack; int iRet = GetRegisterPack(rgPack); if (iRet == -1) { Sleep(700); continue; } else if (iRet == -2) { Sleep(2000); continue; } /************************************************************************/ /* 此处先获取注册页面的信息,以备填充 */ /************************************************************************/ //HWND hwnd = ::FindWindow("IEFrame","棋牌乐 - 注册帐号 - Microsoft Internet Explorer"); m_hwnd = ::FindWindow("#32770","帐号注册"); char str[128] = {0}; HWND hwnd = NULL; CWindowFind find; //hwnd = find.MyFindWindow("Internet Explorer_Server","",hwnd); hwnd = find.GetChildWindow(m_hwnd,1); hwnd = find.GetChildWindow(hwnd,1); hwnd = find.GetChildWindow(hwnd,1); hwnd = find.GetChildWindow(hwnd,1); GetClassName(hwnd,str,sizeof(str));//获取类名 if(strcmp(str,"Internet Explorer_Server")==0) { IHTMLDocument2 *pDoc = GetDocInterface(hwnd); GetHtmlCtrl(pDoc); } rgPack.strIp = g_strCurrIP; m_iCheckFlag = 0; g_strCheckCode = ""; if (m_iCheckFlag == 0) { //删除旧的验证码 if (_access(g_strDirect+g_strFileName,0) == 0) { CFile::Remove(g_strDirect+g_strFileName); } ShowMessage("正在获取验证码..."); m_iCheckFlag = 0; objectlink = "/RegRandomCodeCtrl"; //strHeaders = m_strHeader + "\r\nReferer:http://www.dajiale365.com/reg.shtml"; iRet = RequestGetPageExExEx(m_strServerURL,objectlink,strHeaders,strError,1); if (iRet != 0) { ShowMessage("获取验证码失败"); m_nErrorTime ++; DeleteObjectExEx(); return false; } else { ShowMessage("获取验证码成功"); strShow.Format("正在注册:%s %s",rgPack.strAcc,rgPack.strPwd); ShowMessage(strShow); } } while(!g_ExitFlag) { if ( g_strCheckCode != "") { break; } Sleep(100); } if (g_ExitFlag) { DeleteObjectExEx(); return false; } CString strFailReason = ""; CString strCheckCode = g_strCheckCode; if (strCheckCode == "r") { continue; } objectlink = "/regAction.jhtml"; switch (g_iRegWebFlag) { case 0: strHeaders = m_strHeader + "\r\nReferer:http://www.7ple.com/reg.jhtml?siteID=11"; break; case 1: strHeaders = m_strHeader + "\r\nReferer:http://www.7pmi.com/reg.jhtml?siteID=11"; break; case 2: default: strHeaders = m_strHeader + "\r\nReferer:http://www.7psw.com/reg.jhtml?siteID=18"; break; } //strHeaders += "\r\nx-requested-with: XMLHttpRequest"; //strHeaders += "\r\nContent-Type: application/x-www-form-urlencoded"; CString strTime = CTime::GetCurrentTime().Format("%m%d%H%M%S"); //strCheckCode = NativeToAscii(strCheckCode); //strCheckCode = "确学装衣"; //ConvertGBKToUtf8(strCheckCode); m_strMac.MakeUpper(); switch (g_iRegWebFlag) { case 0: ConvertGBKToUtf8(strCheckCode); strCheckCode = URLEncode(strCheckCode); postStr.Format("username=%s&password=%s&repassword=%s&sex=1&myhead=1&email=%s&siteID=11&7pmiReferrerUrl=&7pmiLocalUrl=&selfinfo=&machineserial=%s&transactionid=%s&verify=%s&ptvodaccounts=&introducer=%s&checkcode=%s&agree=on",rgPack.strAcc,rgPack.strPwd,rgPack.strPwd,rgPack.strMail,m_strMac,m_strTrans,m_strVerify,rgPack.strNickName,strCheckCode); break; case 1: postStr.Format("username=%s&password=%s&repassword=%s&sex=1&myhead=1&email=%s&siteID=11&7pmiReferrerUrl=&7pmiLocalUrl=&selfinfo=&machineserial=%s&transactionid=%s&verify=%s&ptvodaccounts=&introducer=%s&checkcode=%s&agree=on",rgPack.strAcc,rgPack.strPwd,rgPack.strPwd,rgPack.strMail,m_strMac,m_strTrans,m_strVerify,rgPack.strNickName,strCheckCode); break; case 2: default: ConvertGBKToUtf8(strCheckCode); strCheckCode = URLEncode(strCheckCode); postStr.Format("username=%s&password=%s&repassword=%s&sex=1&myhead=1&email=%s&siteID=18&7pmiReferrerUrl=&7pmiLocalUrl=&selfinfo=&machineserial=%s&transactionid=%s&verify=%s&ptvodaccounts=&introducer=%s&checkcode=%s&agree=on",rgPack.strAcc,rgPack.strPwd,rgPack.strPwd,rgPack.strMail,m_strMac,m_strTrans,m_strVerify,rgPack.strNickName,strCheckCode); break; } iRet = RequestPostPageExExEx(m_strServerURL,objectlink,strHeaders,postStr,strError,0);// if ( iRet != 0 ) { TRACE("POST出错"); m_nErrorTime ++; DeleteObjectExEx(); return false; } m_strWorkBuf.MakeLower(); iPos = m_strWorkBuf.Find("注册成功"); if ( iPos >= 0) { ShowMessage("注册成功"); rgPack.iStatus = 1; rgPack.strMemo = "成功"; strShow.Format("%s,%s,",rgPack.strAcc,rgPack.strPwd); WriteLog(strShow,0); //保存注册成功的账号进数据库 iRet = WriteToBase(rgPack,g_iRegWebFlag); if (iRet != 0) { WriteLog(strShow,3); } m_iIpSuccNum++; if (m_iIpSuccNum >= g_iIpRegNum) { if (g_iAotuChangeIp) { ShowMessage("单一IP注册数已达上限,正在切换IP..."); } if (g_iIsChangeMac) { ShowMessage("单一MAC地址注册数已达上限,正在切换MAC地址..."); } m_iNeedChageIP = 1; m_iIpSuccNum = 0; m_iIsNeedChangeMac = 1; } } else {//注册失败 CString strBefore = "<div align=\"center\"><font color='red'>"; CString strAfter = "</font></div>"; strFailReason = GetKeyString(m_strWorkBuf,strBefore,strAfter); ShowMessage("注册失败: "+strFailReason); rgPack.iStatus = 2; rgPack.strMemo = strFailReason; } AddToShowList(rgPack); if (g_iDeleteFlag == 1) { if (strFailReason.Find("验证码输入错误")<0) { DeleteRegisterPack(rgPack); } else { m_iCodeErrorNum ++; if (m_iCodeErrorNum >= g_iCodeErrorNum) { ShowMessage("验证码错误次数到达上限,跳过此账号的注册"); DeleteRegisterPack(rgPack); m_iCodeErrorNum = 0; } } } else { DeleteRegisterPack(rgPack); } #ifdef DEBUG m_iNeedChageIP = 1; #endif if (m_iNeedChageIP == 1) //换IP { DeleteObjectExEx(); return false; } if (m_iIsNeedChangeMac == 1) //换MAC地址 { DeleteObjectExEx(); return false; } } catch (...) { DeleteObjectExEx(); return false; } } return false; } catch (...) { } DeleteObjectExEx(); return false; }