谢谢你回复我的关于OpenRequest的返回值为500,而实际上IE是可以访问的问题。我的目的,是写一个简单的页面获取,就是下载某些页面,进行一些处理工作。页面如
http://www.china-flower.com/e-info/html/sell.asp?id=1607 这个页面就是这样的情况一,还有,http://www.china-flower.com/e-info/html/sell.asp?id=1588等。你的程序中要是能下的话,给我个例子吧。谢谢。

解决方案 »

  1.   

    你看看有没有帮助char fname[1024]; 
    void LogFile(char *p) 

    FILE *fp=fopen(fname,"a+"); 
    fprintf(fp,"%s\n",p); 
    fclose(fp); 
    } BOOL HttpClient(void) 

    WSADATA ws; 
    SOCKET s; 
    struct sockaddr_in addr; 

    int iResult; 
    long lResult; 
    char strSubAddr[2024], strBuffer[100]; 

    lResult = WSAStartup(0x0101,&ws); 
    s = socket(AF_INET,SOCK_STREAM,0); 

    addr.sin_family = AF_INET; 
    addr.sin_port = htons(80); 
    addr.sin_addr.s_addr = inet_addr 
    ("211.147.15.84"); // 网站地址
    iResult=connect(s,(struct sockaddr *) 
    &addr, sizeof(addr)); 
    if(SOCKET_ERROR == iResult) 

    // 连接失败 
    WSACleanup(); 
    return FALSE; 

    // 连接成功
    strcpy(strSubAddr, "GET /e-info/html/sell.asp?id=1607\r\n"); 
    strcpy(fname, "index.htm"); //保存文件的文件名
    iResult = send(s, strSubAddr,strlen(strSubAddr),0); 

    AfxMessageBox("Start downloading");
    // 下载文件 
    do { 
    strset(strBuffer,' '); 
    iResult = recv(s,strBuffer,sizeof(strBuffer),0); 
    LogFile(strBuffer); 
    } while( iResult !=0 ); 


    WSACleanup(); 
    return TRUE; 
    }
      

  2.   

    试试这个
    pConnect=session.GetHttpConnection(strServerName,nPort);
    if(pConnect)
    {
    pFile=pConnect->OpenRequest(CHttpConnection::HTTP_VERB_GET,"/e-info/html/sell.asp?");}
    pFile->SendRequest(strHeader,(LPVOID)(LPCTSTR)sendStr,sendStr.GetLength());sendStr="id=1607";
      

  3.   

    To masterz: 我的代码的写法就是OpenRequest(CHttpConnection::HTTP_VERB_GET,"/e-info/html/sell.asp?id=1607");
    返回的就是500了。