毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 论文 >> 正文

VC++的ftp客户端设计论文(流程图+源代码) 第4页

更新时间:2010-5-18:  来源:毕业论文
VC++的ftp客户端设计论文(流程图+源代码) 第4页
 CFrameWnd::OnTimer(nIDEvent);}
5.1.5.  改变应用程序窗口标题:
标题改为“FTP客户端”在CmyFtpApp的InitInstance函数中添加代码:m_pMainWnd->SetWindowText("FTP客户端");
5.2  模块二: 连接到FTP服务器功能的实现: (何佳 负责)
5.2.1  插入一个对话框:
      界面如下:   
对各控件进行变量设置,如下图所示:
注:在IDC_EDIT3编辑框的Styles选项中,选中PassWord。
5.2.2  新建一个类管理对话框:
      在打开ClassWizard时,系统提示是否新建一个类管理对话框,选择“是”,类名为:CconnectDlg,基类为:CDialog
5.2.3  CConnectDlg函数:
     对按钮“连接”的鼠标的点击,进行响应,函数如下:
void CConnectDlg::OnConnect()
{
 UpdateData();
 CDialog::OnOK();
}
5.2.4.  添加public成员变量:

    首先在CMyFtpView.h中添加public成员变量:
    CConnectDlg      m_ConDlg;   //管理连接对话框
 CFtpDlg          m_FtpDlg;    //管理CFtpDlg
 CString           m_FtpWebSite;  //保存Ftp服务器站点
 Cstring           m_UserName;    //保存用户名
 CString           m_UserPwd;     //保存用户密码
 CInternetSession*  m_pSession;   //用于Internet连接
 CFtpConnection*  m_pConnection;  //用于建立Ftp连接
注: CFtpDlg为后建立的新类
并在构造函数中初如化:
CMyFtpView::CMyFtpView()
{
    m_FtpWebSite = _T("");
 m_UserName = _T("");
 m_UserPwd = _T("");
 m_pSession = NULL;
 m_pConnection = NULL;
}

5.2.5  修改 CMyFtpView类的OnConnect函数:

   代码如下:
void CMyFtpView::OnConnect()
{
 //生成一个模态对话框
 if (IDOK==m_ConDlg.DoModal())
 {
  m_pConnection = NULL;  
  m_pSession = NULL; 
        m_FtpWebSite = m_ConDlg.m_FtpWebSite;
  m_UserName = m_ConDlg.m_UserName;
  m_UserPwd = m_ConDlg.m_UserPwd; 
  m_pSession=new CInternetSession(AfxGetAppName(),
   1,
   PRE_CONFIG_INTERNET_ACCESS);  
  try
  {
   //试图建立FTP连接
   SetTimer(1,1000,NULL);  //设置定时器,一秒发一次WM_TIMER
   CString  str="正在连接中....";
   ((CMainFrame*)GetParent())->SetMessageText(str);   
   m_pConnection=m_pSession->GetFtpConnection(m_FtpWebSite,
    m_UserName,m_UserPwd);     
  }
  catch (CInternetException* e)
  {
   //错误处理
   e->Delete();
   m_pConnection=NULL;
  }}}

5.2.6 添加响应函数:

    为CMyFtpView类添加WM_TIMER消息的响应函数,代码如下:
void CMyFtpView::OnTimer(UINT nIDEvent)
{
 static int time_out=1;   //用于判断是否超时
 time_out++;          //每秒增加一次
 if (m_pConnection == NULL)  
 {
  CString  str="正在连接中....";
  ((CMainFrame*)GetParent())->SetMessageText(str);  //在状态栏中显示,连接状态
  if (time_out>=60)         //设置超时的时间为1分钟
  {
            ((CMainFrame*)GetParent())->SetMessageText("连接超时!");
   KillTimer(1);      //关闭定时器
   MessageBox("连接超时!","超时",MB_OK);   //提醒用户
  }
 }
 else  //如果连接成功,执行如下
 {
        CString str="连接成功!";      
  ((CMainFrame*)GetParent())->SetMessageText(str); 
  KillTimer(1);
  //连接成功之后,不用定时器来监视连接情况
  //同时跳出操作对话框
        //将FTP连接交给CFtpDlg
  m_FtpDlg.m_pConnection = m_pConnection;
  //创建非模态对话框CFtpDlg
  m_FtpDlg.Create(IDD_DIALOG2,this);
  m_FtpDlg.ShowWindow(SW_SHOW);
 }
 CView::OnTimer(nIDEvent);
}
 5.3  模块三: FTP客户端主要功能的实现  (  孟婕 负责)
  5.3.1 新插入一个对话框资源:
    新插入一个对话框资源,界面如下:   
各控件变量信息如下图所示:
5.3.2  建立新类CFtpDlg管理该对话框:

上一页  [1] [2] [3] [4] [5] [6] [7] 下一页

VC++的ftp客户端设计论文(流程图+源代码) 第4页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。