Функция FtpGetFileA (wininet.h)
Извлекает файл с FTP-сервера и сохраняет его под указанным именем файла, создавая локальный файл в процессе.
Синтаксис
BOOL FtpGetFileA(
[in] HINTERNET hConnect,
[in] LPCSTR lpszRemoteFile,
[in] LPCSTR lpszNewFile,
[in] BOOL fFailIfExists,
[in] DWORD dwFlagsAndAttributes,
[in] DWORD dwFlags,
[in] DWORD_PTR dwContext
);
Параметры
[in] hConnect
Обработка сеанса FTP.
[in] lpszRemoteFile
Указатель на строку, завершающую значение NULL, содержащую имя извлекаемого файла.
[in] lpszNewFile
Указатель на строку, завершающуюся значением NULL, которая содержит имя файла, создаваемого в локальной системе.
[in] fFailIfExists
Указывает, должна ли функция продолжаться, если локальный файл указанного имени уже существует. Если fFailIfExiststrue, а локальный файл существует, ftpGetFile завершается ошибкой.
[in] dwFlagsAndAttributes
Атрибуты файла для нового файла. Этот параметр может быть любым сочетанием флагов FILE_ATTRIBUTE_*, используемых функцией CreateFile.
[in] dwFlags
Управляет тем, как функция будет обрабатывать скачивание файла. Первый набор значений флага указывает условия, при которых происходит передача. Эти флаги типа передачи можно использовать в сочетании со вторым набором флагов, которые управляют кэшированием.
Приложение может выбрать одно из этих значений типа передачи.
Следующие флаги определяют, как будет выполняться кэширование этого файла. Любое сочетание следующих флагов можно использовать с флагом типа передачи.
[in] dwContext
Указатель на переменную, содержащую определяемое приложением значение, которое связывает этот поиск с любыми данными приложения. Это используется только в том случае, если приложение уже вызывало InternetSetStatusCallback для настройки функции обратного вызова состояния.
Возвращаемое значение
Возвращает TRUE, если выполнено успешно или FALSE в противном случае. Чтобы получить определенное сообщение об ошибке, вызовите GetLastError.
Замечания
FtpGetFile — это высокоуровневая подпрограмма, которая обрабатывает все расходы, связанные с чтением файла с FTP-сервера и его хранением локально. Приложение, которое должно извлекать только данные файла или требует тесного управления передачей файлов, должно использовать функции FtpOpenFile и InternetReadFile.
Если параметр
Как lpszRemoteFile, так и lpszNewFile могут быть частично или полностью полными именами файлов относительно текущего каталога.
Как и все остальные аспекты API WinINet, эта функция не может быть безопасно вызвана из dllMain или конструкторов и деструкторов глобальных объектов.
Заметка
Заголовок wininet.h определяет FtpGetFile как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 2000 Профессиональный [только классические приложения] |
минимальный поддерживаемый сервер | Windows 2000 Server [только классические приложения] |
целевая платформа | Виндоус |
заголовка | wininet.h |
библиотеки |
Wininet.lib |
DLL | Wininet.dll |