VC怎么获取验证码(不是识别,是下载)
我尝试用SOCKET获取,但不成功,因为先接收到一个报文,然后才来验证码数据流,但我不知道怎么识别验证码数据流
我用WPE拦自己的程序,只能拦到发送出去的包,拦截不到接收到的包,但确实是收到了(用的是SDK的send 和 recv 函数)
不知道是怎么回事大家有什么办法可以获得到网站的验证码吗?除了用SOCKET还有什么函数可以用?(已经知道网站获取验证码的地址,怎么保存为图片)需要相关数据的可以回复告诉我,我一定给出
希望大家帮帮我哈,谢谢了补充一点:
我除了要下载到验证码,还要获取到相关的COOKIE , 有什么办法可以获取COOKIE又能下载到验证码吗?如果不够分我可以加,谢谢了

解决方案 »

  1.   

    获取验证码的图片的URL,然后下载
      

  2.   

    具体用什么类?
    我还要得到COOKIE信息的
      

  3.   

    我已经知道验证图片的URL了,不知道怎么下载并获得COOKIE(可能也可以不用获取COOKIE)
      

  4.   


    CInternetSession session;
    CString strURL(_T(""));
    int nRand1 = (rand() % 10000 + 1000);
    int nRand2 = (rand() % 10000 + 1000); strURL.Format(_T("http://www.xxx.com/ShowExPwd.aspx?temp=%04d%04d"), nRand1, nRand2);
    try
    {
    CFile* pFile = session.OpenURL(strURL); DWORD dwSize = (DWORD)pFile->GetLength();
    const int MAX_COUNT = 512;
    char buf[MAX_COUNT] = {0}; m_strPath.Empty(); TCHAR szPath[MAX_PATH] = {0};
    GetModuleFileName(NULL, szPath, MAX_PATH);
    PathRemoveFileSpec(szPath);
    m_strPath.Format(_T("%s\\%s"), szPath, _T("ShowEx_Pwd_CSDN.bmp")); CFile file;
    file.Open(m_strPath, CFile::modeCreate | CFile::modeWrite);
    while(pFile->Read(buf, MAX_COUNT))
    {
    file.Write(buf, MAX_COUNT);
    }
    file.Close();
    pFile->Close();
    delete pFile;
    session.Close(); bDownLoadAuthCode = TRUE;
    }
    catch (CException* e)
    {
    //e->ReportError();
    e->Delete();
    }
      

  5.   

    一般都是POST。。,验证码你用URL很难得到! ..然后提交一段刷新验证码的数据给服务器,服务器回应的就是验证码!,可以直接显示在你的图片控件中!
      

  6.   

    不是的,能用URL正常获取到验证码
    我用4楼那位大哥的方法能保存下来了
    但是有一个问题,能不能用SDK获取保存?我的工程没有使用MFC,添加了afxinet.h文件后要求链接UAFXCW.LIB库,我下载了一个,链接时又出现new操作符重定义和__endthreadex __beginthreadex 不存在的问题
      

  7.   

    难道没有用SDK就能完成的方法吗?