CInternetSession* m_pInetSession;
 CFtpConnection*   m_pFtpConnection;

//连接服务器的函数

BOOL CftpClientDlg::connnect()
{
 m_pInetSession = new CInternetSession( AfxGetAppName(),1,PRE_CONFIG_INTERNET_ACCESS);
 try{
  m_pFtpConnection = m_pInetSession->GetFtpConnection(L"127.0.0.1",L"chentongxin",L"tongxin",21);
  AfxMessageBox(L"服务器连接成功");
 }
 catch(CInternetException *pEx){
  
  TCHAR szError[1024] = {0};
  if(pEx->GetErrorMessage(szError,1024))
   AfxMessageBox(szError);
  else
   AfxMessageBox(L"服务器连接失败");
  pEx->Delete();
  m_pFtpConnection = NULL;

return FALSE;
 }
 return TRUE;
}

//上传文件
BOOL CftpClientDlg::putFile()
{
 if(m_pFtpConnection->PutFile(_T("e:/test.txt"),_T("test.txt"))){
  //第一个参数为本地文件的地址,第二个为服务器端文件的地址
  AfxMessageBox(_T("发送成功!"));
  return TRUE;
 }
 else{
  AfxMessageBox(_T("发送失败!"));
  return FALSE;
 }
}

//下载文件
BOOL CftpClientDlg::getFile()
{
 if(m_pFtpConnection->GetFile(_T("afa.txt"),_T("e:/a.txt"))){
  //第一个参数为本地文件的地址,第二个为服务器端文件的地址
  AfxMessageBox(_T("下载成功!"));
  return TRUE;
 }
 else{
  AfxMessageBox(_T("下载失败!"));
  return FALSE;
 }
 return TRUE;
}

//关闭连接
BOOL CftpClientDlg::disconnect()
{
 if(m_pFtpConnection != NULL)
 {
  m_pFtpConnection->Close();
  delete m_pFtpConnection;
 }
 delete m_pInetSession;
 return TRUE;
}

MFC连接ftp服务器的更多相关文章

  1. 【FTP】C# System.Net.FtpClient库连接ftp服务器(上传文件)

    如果自己单枪匹马写一个连接ftp服务器代码那是相当恐怖的(socket通信),有一个评价较高的dll库可以供我们使用. 那就是System.Net.FtpClient,链接地址:https://net ...

  2. 【FTP】C# System.Net.FtpClient库连接ftp服务器(下载文件)

    如果自己单枪匹马写一个连接ftp服务器代码那是相当恐怖的(socket通信),有一个评价较高的dll库可以供我们使用. 那就是System.Net.FtpClient,链接地址:https://net ...

  3. MFC 遍历FTP服务器目录相关

    CInternetSession* pSession; pSession = new CInternetSession;  //构造新的连接 CFtpConnection* pFtpCon; pFtp ...

  4. java 无法连接ftp服务器(500 OOPS: cannot change directory)

    在使用java连接ftp服务器时可能会出现无法连接的情况,检查代码是没有错误的,这时就应该考虑一下服务器端的情况了: 首先用在本地打开命令窗口,输入:ftp ftp服务器IP,窗口会提示你输入用户名密 ...

  5. linux下常用FTP命令 1. 连接ftp服务器

    1. 连接ftp服务器 格式:ftp [hostname| ip-address] a)在linux命令行下输入: ftp 192.168.1.1 b)服务器询问你用户名和密码,分别输入用户名和相应密 ...

  6. linux下常用FTP命令 1. 连接ftp服务器[转]

    1. 连接ftp服务器 格式:ftp [hostname| ip-address]a)在linux命令行下输入: ftp 192.168.1.1 b)服务器询问你用户名和密码,分别输入用户名和相应密码 ...

  7. 连接ftp服务器 JDK 1.7

    import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.F ...

  8. 【VS2019】Web项目发布时提示无法连接FTP服务器

    使用 Visual Studio 2019 时出现的问题 环境:win10 ltsc 场景 发布Web项目到FTP时 失败,并提示 _无法打开网站"ftp://...".未安装与 ...

  9. 常用FTP命令 1. 连接ftp服务器

    1. 连接ftp服务器 格式:ftp [hostname| ip-address]a)在linux命令行下输入: ftp 192.168.1.1 b)服务器询问你用户名和密码,分别输入用户名和相应密码 ...

随机推荐

  1. javascript string对象的属性与方法

    一 创建string对象 new string('string'); 更直接的定义方法是var str = 'string'; 二 string属性 1.constructor 2.lenght 字符 ...

  2. DOSUSB 2.0 免费版的限制原理

    两年前,我在写USB的文章时,多次提到了DOSUSB这个东东,这两年也没有关注这方面的变化,最近,有机会重新进入DOSUSB的官方网站(www.dosusb.net),欣喜地发现,这个网站不仅依然存在 ...

  3. WPF 利用子线程弹出子窗体的研究

    一般来说子线程都是用来处理数据的,主窗体用来实现展现,但是有些时候我们希望子窗体实现等待效果,遮挡主窗体并使主窗体逻辑正常进行,这个业务需求虽然不多,但是正好我们用到了,于是我打算把研究成果写在这了. ...

  4. LINQ to SQL和Entity Framework对比与关联 (转载)

    LINQ to SQL和Entity Framework对比与关联       LINQ to SQL和Entity Framework都是一种包含LINQ功能的对象关系映射技术.他们之间的本质区别在 ...

  5. Common Lisp 编译器IDE环境搭建

    搭建Common Lisp编程环境的方法有很多种,这里我使用的是最常见的一种:SBCL + Emacs + SLIME. SBCL是Steel Bank Common Lisp的简称,它是Common ...

  6. css案例学习之span边框实现的特殊效果

    bottom left bottom right top left top right 配合颜色来使用,实现一些神奇的效果 #menu a span{ height:; width:; /*borde ...

  7. C#中给线程传值并启动

    方法1: ParameterizedThreadStart 委托+Thread.Start 方法 (Object)         private void btnLogin_Click(object ...

  8. sizeof与类,继承,virtual的种种(整理)

    对虚继承层次的对象的内存布局,在不同编译器实现有所区别. 首先,说说GCC的编译器. 它实现比较简单,不管是否虚继承,GCC都是将虚表指针在整个继承关系中共享的,不共享的是指向虚基类的指针. clas ...

  9. UESTC_方老师的分身 II CDOJ 915

    方老师的分身 II Time Limit: 10000/5000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) Submi ...

  10. 棋盘覆盖(大数阶乘,大数相除 + java)

    棋盘覆盖 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述 在一个2k×2k(1<=k<=100)的棋盘中恰有一方格被覆盖,如图1(k=2时),现用一缺角的 ...