打算用vc做一个小程序,不断访问一个网站,据此增加这个网站的访问量,请问大虾,我该怎么设计?
有源代码提供者,立即给分
win32的代码也可以,我对API函数比对MFC函数熟悉一百倍谢谢!

解决方案 »

  1.   

    // plogin.cpp : Defines the entry point for the console application.
    //#include "stdafx.h"
    #include <winsock2.h>#define PROXY_VERSIONint arID[]=
    {
    1007225,
    920609,
    2173606,
    5696055,
    5703677,
    5703812,
    3610807,
    2122749,
    1151930,
    956871,
    1270918,
    1376658,
    1245932,
    880192,
    271189,
    824477,
    1169693,
    1210900,
    1103920,
    1155540,
    1107700,
    288110,
    1298694,
    921224,
    5294611,
    805542,
    2728306,
    1129909,
    765816,
    4200211,
    2060684,
    3149333,
    781831,
    1095938,
    1136145,
    1343146,
    1943548,
    1658915,
    635069,
    1306888,
    1404342,
    1374925,
    1180120,
    2875372,
    1818688,
    1296835,
    1223381,
    1595852,
    1022297,
    821610,
    1281862,
    1136383,
    1726875,
    1220796,
    3188889,
    1108050,
    924230,
    1258419,
    1528541,
    4796910,
    1988860,
    1238975,
    2208823,
    1278204,
    922203,
    1394757,
    986849,
    1694240,
    996789,
    1165300,
    927634,
    1108981,
    2097199,
    1584768,
    1052421,
    844366,
    1337124,
    5539312,
    2234495,
    1767647,
    1111290,
    935782,
    630971,
    1468405,
    1783791,
    1118578,
    5274174,
    2641619,
    2257418,
    3023147,
    913618,
    759846,
    2617455,
    5328521,
    1541239,
    608429,
    232474,
    1994799,
    3777371,
    4627292,
    5165311,
    1178473,
    2675389,
    2582069,
    4660176,
    4720899,
    4442332,
    1417125,
    3093523,
    2312135,
    1372406,
    1353354,
    2131716,
    1815951,
    4144545,
    1619094,
    1794707,
    6152904,
    2878261,
    1194020,
    1983461,
    961422,
    6194126,
    1285590,
    5978007,
    5757172,
    5941952,
    1952236,
    5764048,
    139697,
    };//liuyanSql.pl?nId=5696055&csId=62869&cName=%d5%c2%cc%ce
    char szHeadI[] = 
    "GET http://www.5460.net/txl/liuyan/liuyanSql.pl?nId=%d";char szHeadII[] =
    "&csId=688939&cName=%d5%c2%cc%ce HTTP/1.1\r\n"
    "Accept: */*\r\n"
    "Referer: http://www.5460.net/txl/login/login.pl\r\n"
    "Accept-Language: zh-cn\r\n"
    "Accept-Encoding: gzip, deflate\r\n"
    "User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)\r\n"
    "Host: www.5460.net\r\n"
    "Connection: Keep-Alive\r\n"
    #ifdef PROXY_VERSION
    "Proxy-Authorization: Basic eG9femp1OmJvYm8xODEzMTY=\r\n"
    #endif
    "\r\n";
    //"Cookie: nId=2173606; pswd=wither\r\n\r\n";char msg[4000];BOOL SockInit()
    { WSADATA wsadata;
    if(WSAStartup(MAKEWORD(2,0),&wsadata))
    {
             return FALSE;
    }
    if(wsadata.wVersion!=MAKEWORD(2,0))
    {
    WSACleanup();
    return FALSE;
    }
    return TRUE;
    }int main(int argc, char* argv[])
    {
    SockInit();
    int skt; int len;
    struct sockaddr_in peer;
    memset(&peer, 0, sizeof(peer));
    peer.sin_family = AF_INET;
    #ifdef PROXY_VERSION
    peer.sin_port = htons(80);
    peer.sin_addr.s_addr = inet_addr("10.21.41.16");
    #else
    peer.sin_port = htons(80);
    peer.sin_addr.s_addr = inet_addr("61.137.93.108");
    #endif char buff[1024*32];
    for(int i = 0; i < 1 /*sizeof(arID)/sizeof(int)*/; i++)
    {

    int nId = arID[i];



    skt = socket(AF_INET, SOCK_STREAM, 0);
    len = connect(skt, (struct sockaddr *)&peer, sizeof(peer));
    if(len != 0)
    {
    closesocket(skt);
    continue;
    }

    sprintf(msg, szHeadI, nId);
    strcat(msg, szHeadII); len = send(skt, msg, sizeof(msg)-1, 0);
    if(len <= 0)
    {
    closesocket(skt);
    continue;
    } int total = 0; for(;;)
    {
    fd_set fds;
    FD_ZERO(&fds);
    FD_SET(skt, &fds);
    timeval tv;
    tv.tv_sec = 10;
    tv.tv_usec = 0;
    len = select(0, &fds, NULL, NULL, &tv);
    if(len <= 0)
    break;
    len = recv(skt,buff, sizeof(buff), 0);
    buff[len] = '\0';
    printf("%s", buff);

    if(len <= 0)
    break; total += len;

    }
    printf("%d recv: %d\n", nId, total);


    closesocket(skt);
    Sleep(500);
    }

    WSACleanup();

    return 0;
    }
      

  2.   

    记录IP的话,就修改HTTP头的REMOTE_ADDR,一般的网页都是只读取这个
    SERVER_VARIABLE
      

  3.   

    歪歪:感谢你回答我的问题你能不能举一个更为普遍的例子,不要是5460登录的界面的比如举一个http://www.westcn.com的例子?
    谢谢!
      

  4.   

    我做过。
    使用wininet,OpenURL一次就相当于一次连接。
    全部使用api的,看来你应该很熟悉的。
      

  5.   

    我认为最好的做法是使CMYView派生CHttpView,并且利用CMyView::OnInitialUpdate的Navigate2函数直接导航到你那个网站,至于如何循环的话
    就靠自己的方法了,可以CreateProcess或者它法
      

  6.   

    to harry:能增加计数器的访问量吗?
      

  7.   

    zbde00(为了讨老婆喜欢,努力学习中......)
    要看这个地方的计数器怎么设计的。如果不判断ip,没有时间间隔限制,加起来不要太快奥。
      

  8.   

    while(1)
    {
         打开网站;
         关闭网站;
    }
    这样行不行?
      

  9.   

    把这代码保存为 *.js 然后双击
    var url="http://www.csdn.net/";//修改这个。。
    var xh=new ActiveXObject("Microsoft.XMLHTTP");
    while(WScript.sleep(1000)||1)
    {
    xh.Open("GET",url,false);
    xh.Send("");
    }