Шаг 267 - Создание FTP приложенией

Создаем приложение как MFC AppWizard на базе диалогового окна с именем TestFtp. На диалоговое окно помещаем кнопку, по нажатию на которую мы и будем производить работу с FTP.

void CTestFtpDlg::OnGo() 
{
}

Протокол FTP создан для передачи файлов между машинами. При этом необходима совместимость только на уровне протокола. Совместимость не касается процессоров, операционных систем и так далее. Этот протокол обеспечивает еще некоторые возможности кроме передачи файлов, например, получение списка файлов. MFC поддерживает FTP через следующие классы.

CInternetSession	\\ управление сеансом
CFtpConnection	\\ управляем подключением
CFtpFileFind	\\ обеспечивает работу со списком файлов

Типичные шаги по созданию FTP Client следующие. Подключаем описание функций и организовываем переменную сессии:

// TestFtpDlg.cpp : implementation file
//
......
#include "TestFtpDlg.h"
#include "afxinet.h"

#ifdef _DEBUG
#define new DEBUG_NEW

......
void CTestFtpDlg::OnGo() 
{
	CInternetSession session;
}

Дальше нам надо получить CFtpConnection объект на основе установленного соединения:

void CTestFtpDlg::OnGo() 
{
	CInternetSession session;
	CFtpConnection *cp=session.GetFtpConnection("ftp.microsoft.com",
		"anonymous","123@mail.ru");
}

После этого на основе установленного соединения мы можем производить различные действия, например, искать файлы. Вот так:

void CTestFtpDlg::OnGo() 
{
	CInternetSession session;
	CFtpConnection *cp=session.GetFtpConnection("ftp.microsoft.com",
		"anonymous","123@mail.ru");
    CFtpFileFind cf(cp);
	BOOL res;
	res=cf.FindFile("*");
	if (res==TRUE)
	{
		cf.FindNextFile(); 
		AfxMessageBox(cf.GetFileName()); 
	}
}

В результате этой программы мы получим первое имя файла. Смотрите:

267.gif (11431 b)


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 7.11.2000