Поделиться через


CFtpConnection::OpenFile

Эта функция-член вызывается, чтобы открыть файл, расположенный на FTP-сервер для чтения или записи.

CInternetFile* OpenFile( 
   LPCTSTR pstrFileName, 
   DWORD dwAccess = GENERIC_READ, 
   DWORD dwFlags = FTP_TRANSFER_TYPE_BINARY, 
   DWORD_PTR dwContext = 1  
);

Параметры

  • pstrFileName
    Указатель на строку, содержащую имя файла, который необходимо открыть.

  • dwAccess
    Определяет, как файл будет получить доступ. Может быть либо GENERIC_READ или GENERIC_WRITE, но не оба.

  • dwFlags
    Определяет условия, при которых последующие передачи. Это может быть любое из следующих констант FTP_TRANSFER_*:

    • Использование ASCII FTP_TRANSFER_TYPE_ASCII передачи файлов FTP (a) возвращают введите метод. Новообращенные данные контролируют и форматирования к локальным цифрам.

    • FTP_TRANSFER_TYPE_BINARY сведения о передаче файла с помощью образ FTP (i) возвращает тип метода. Сведения о передаче файла точно в том виде, в котором он существует, без изменений. По умолчанию это метод передачи.

  • dwContext
    Идентификатор контекста для открытия файла. См. раздел Примечания дополнительные сведения о dwContext.

Возвращаемое значение

Указатель на объект CInternetFile.

Заметки

OpenFile следует использовать в следующих ситуациях:

  • Приложение содержит данные, которые должны отправку и создан как файл на ftp-сервере, но данные, которые не в локальном файле. После OpenFile открывает файл, используйте CInternetFile::Write приложения отправки данных на сервер файла FTP.

  • Приложение должно получить файл из сервера и установить его в приложение- управляемую память, вместо того, чтобы записать на диск. Приложение использует CInternetFile::Read после использования OpenFile, чтобы открыть файл.

  • Приложению требуется явный уровень элемента управления с передачей файла. Например, приложение может потребоваться отобразить элемент управления "Индикатор выполнения" отображает ход состояния передачи файла при загрузящ файл.

После вызова OpenFile и до вызова CInternetConnection::Close приложение не сможет вызывать только CInternetFile::Read, CInternetFile::Write, CInternetConnection::Close или CFtpFileFind::FindFile. Вызовы к другим функциям FTP для одного и того же сеанса FTP завершится с ошибкой и установят код ошибки FTP_ETRANSFER_IN_PROGRESS.

Параметр pstrFileName может быть либо частично полным именем файла относительно текущей папке или полным. Обратная косая черта (\) или переадресует косая черта (/) можно использовать в качестве разделителя каталогов для любого имени. OpenFile преобразует разделители имен каталогов в соответствующие символы перед его использованием.

Переопределите значение по умолчанию dwContext чтобы задать идентификатор контекста на значение для выбора. Идентификатор контекста связать с данной конкретной операцией объекта CFtpConnection, созданного по объектом CInternetSession. Значение возвращается в CInternetSession::OnStatusCallback, чтобы гарантировать состояние на работу с которой он определен. См. статью Первые шаги в интернете. WinInet дополнительные сведения об идентификаторе контекста.

Требования

Header: afxinet.h

См. также

Ссылки

Класс CFtpConnection

Диаграмма иерархии

Класс CInternetConnection

CFtpConnection::GetFile

CGopherConnection::OpenFile

CInternetFile::Write

CInternetFile::Read