VC++中实现FTP

发表于:2007-07-04来源:作者:点击数: 标签:
捷通电脑技术有限公司 陈 珏 这个小程序用VC ++很方便地实现了FTP 功能。这只是个小 测试 程序,通过这个程序还可以扩展许多功能,如实现FTP 的下载文件等。在实现这个小程序之前,可用VC +编写一个拨号上网的小程序,先实现拨号上网,再运行这个小程序。
捷通电脑技术有限公司 陈 珏

  这个小程序用VC ++很方便地实现了FTP 功能。这只是个小测试程序,通过这个程序还可以扩展许多功能,如实现FTP 的下载文件等。在实现这个小程序之前,可用VC +编写一个拨号上网的小程序,先实现拨号上网,再运行这个小程序。
  以下是该程序的源代码和运行窗口。
http://www.ltesting.net/uploads/2007/07/1_200707042008291.jpg (13053 字节)
  在VC ++中创建一个基于对话框的应用程序,需要注意的是在创建此工程时,一定要选择Windows Sockets 这一选项。创建的对话框结构如上图,并在对话框类的文件中加入#include 头文件,然后在对话框这个类的文件中加入下列函数,此函数是敲击Send -Button 按钮发生的事件,主要是完成FTP 传送文件的功能,本程序中要传的文件应该放在本工程中。
void CFtptestDlg::OnSendButton()
{
   CString host;
   m_HostEdit.GetWindowText(host);
   //m_HostEdit 是对话框中
    FTP Host :Edit 控件的命名
   CString user;
   
  m_UserEdit.GetWindowText(user);
  //m_UserEdit 是对话框中
   User:Edit 控件的命名
   CString password;
   m_PasswordEdit.GetWindowText(password);
  //m_PasswordEdit 是对话框中
    Password:Edit 控件的命名
   CString filename;
   m_FileEdit.GetWindowText(filename);
  //m_FileEdit 是对话中
    SendFile:Edit 控件的命名
  TRACE(": %s: %s: %s: %s\n",
    host, user, password, filename);
  CInternetSession session(AfxGetApp()
    ->m_pszAppName);
   CFtpConnection *pConn=NULL;
   pConn = session.GetFtpCon ?
nection(host,user,password);
   if (pConn) {
    if (!pConn ->PutFile(filename,filename)){
     MessageBox("传送文件失败??");
    } else {
       MessageBox("传送文件成功!");
    }
    pConn ->Close();
    delete pConn;
    session.Close();
 } else {
    MessageBox("Cannot Connect");
 }
}
  本程序在中文Win95 操作系统、VC ++5.0 上编译、运行通过。 

原文转自:http://www.ltesting.net