请各位大侠指教,连不上的话好像无法返回,该如何处理?

解决方案 »

  1.   

    开个定时器定时检测网络是否断了
    CSocket *s;
    s = new CSocket;
    s->Create();
    if(!s->Connect(m_ip,21))//ftp
    {                //网络断了
        delete s;
        s = NULL;
       
        s = new CSocket;
        s->Create();
        while(!ss->Connect(m_ip,21))    //连不上一直检测
       {
         Sleep(1000);
        }
       //连上了    s->Close();
        delete s;
        s = NULL;
       
       //建立你的ftp/http连接
      

  2.   

    GetFtpConnection()? 你说的是WinInet类吧?
    这个有个典型的处理方法就是用
    try catch来处理,联不上是会抛出异常的,像这个样子 try 
    {
    m_pFtpConnection=m_pInetSession->GetFtpConnection(m_host,m_username,m_password,m_port);
        
    if (m_pFtpConnection != NULL)

    {
    CString m_i;
    m_i="连接成功\r\n";
        m_ftpinfo +=m_i;
        UpdateData(FALSE); //do something
          }

    }
    catch (CInternetException * pEx)
    {
    CString m_i;
    m_i="连接no成功\r\n";
      m_ftpinfo +=m_i;
      UpdateData(FALSE);
    TCHAR szError[1024];
    if ( pEx->GetErrorMessage(szError,1024)) 
    {
     
    m_i=(CString) szError;
      m_ftpinfo +=m_i;
      UpdateData(FALSE);
    }
        
    else 
    AfxMessageBox("There was an exception");
    pEx->Delete();
    m_pFtpConnection=NULL;
    }