怎样用vc模拟一个网页上的登录 不用打开网页 然后再模拟登录后的写入信息和提交信息到网页服务器

解决方案 »

  1.   

    这个其实就是实现HTTP协议通信,用SOCKET或者WININET API就可以实现,重点是在获取COOKIE信息,然后发送的时候要提交COOKIE信息,一步一步就可以实现,如果需要帮助可以Q我:50479329
      

  2.   

    // win32_cui.cpp : 定义控制台应用程序的入口点。
    //
     
    #include "stdafx.h"
    #include <Windows.h>
    #include <WinInet.h>
    #include <iostream>
    using namespace std;
     
    int _tmain(int argc, char* argv[])
    {
        if (argc !=2) 
        {
            cout << "Please useing:test http://www.google.cn";
            cout << endl;
        }
        else
        {
            int ilen=strlen(argv[1]);
            if (ilen<256)
            {
                char szURL[256]={0};
                strncpy(szURL,argv[1],ilen);
                LPSTR lpszData = NULL;   
                DWORD dwSize=0; 
                lpszData=new char[1];
                memset(lpszData,0,1);
     
    retry:
                if (!InternetGetCookie(szURL, "", lpszData, &dwSize))
                {
                    if (GetLastError()== ERROR_INSUFFICIENT_BUFFER)
                    {
                        delete []lpszData;
                        lpszData = new char[dwSize+1];
                        memset(lpszData,0,dwSize+1);
                        goto retry;
                    }
                    else
                    {
                        cout<<"cookie为空!";
                    }
     
                }
                else
                {
                    cout<<"获取cookie成功!"<<endl;
                }
                cout<<"您输入网址的cookie为:"<<endl<< lpszData <<endl;
                delete[]lpszData;
            }
            else
            {
                cout <<"参数超长!";
                return -1;
            }
        }
        return 0;
    }