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
指示如果指定名称的本地文件已存在,函数是否应继续。 如果 fFailIfExists 为 TRUE 且本地文件存在, 则 FtpGetFile 将失败。
[in] dwFlagsAndAttributes
新文件的文件属性。 此参数可以是 CreateFile 函数使用的 FILE_ATTRIBUTE_* 标志的任意组合。
[in] dwFlags
控制函数如何处理文件下载。 第一组标志值指示传输的发生条件。 这些传输类型标志可以与控制缓存的第二组标志结合使用。
应用程序可以选择其中一个传输类型值。
以下标志确定如何缓存此文件。 以下标志的任意组合都可以与传输类型标志一起使用。
[in] dwContext
指向变量的指针,该变量包含将此搜索与任何应用程序数据关联的应用程序定义值。 仅当应用程序已调用 InternetSetStatusCallback 来设置状态回调函数时,才使用此方法。
返回值
如果成功,则返回 TRUE ,否则返回 FALSE 。 若要获取特定错误消息,请调用 GetLastError。
注解
FtpGetFile 是一个高级例程,用于处理与从 FTP 服务器读取文件并将其存储在本地相关的所有簿记和开销。 只需检索文件数据或需要密切控制文件传输的应用程序应使用 FtpOpenFile 和 InternetReadFile 函数。
如果 dwFlags 参数指定 FTP_TRANSFER_TYPE_ASCII,则文件数据的转换会将控件和格式字符转换为本地等效字符。 默认传输是二进制模式,其中文件以与服务器上存储格式相同的格式下载。
lpszRemoteFile 和 lpszNewFile 可以是相对于当前目录的部分或完全限定的文件名。
与 WinINet API 的所有其他方面一样,无法从 DllMain 或全局对象的构造函数和析构函数中安全地调用此函数。
注意
wininet.h 标头将 FtpGetFile 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | wininet.h |
Library | Wininet.lib |
DLL | Wininet.dll |