ftpOpenFileA 函数 (wininet.h)
启动对 FTP 服务器上的远程文件的访问,以便进行读取或写入。
语法
HINTERNET FtpOpenFileA(
[in] HINTERNET hConnect,
[in] LPCSTR lpszFileName,
[in] DWORD dwAccess,
[in] DWORD dwFlags,
[in] DWORD_PTR dwContext
);
参数
[in] hConnect
FTP 会话的句柄。
[in] lpszFileName
指向以 null 结尾的字符串的指针,该字符串包含要访问的文件的名称。
[in] dwAccess
文件访问。 此参数可以 GENERIC_READ 或 GENERIC_WRITE,但不能同时两者。
[in] dwFlags
发生传输的条件。 应用程序应选择一种传输类型和任何指示如何控制文件缓存的标志。
传输类型可以是以下值之一。
以下值用于控制文件的缓存。 应用程序可以使用其中一个或多个值。
[in] dwContext
指向变量的指针,该变量包含将此搜索与任何应用程序数据关联的应用程序定义值。 仅当应用程序已调用 InternetSetStatusCallback 来设置状态回调函数时,才使用此方法。
返回值
如果成功,则返回句柄;否则返回 NULL 。 若要检索特定错误消息,请调用 GetLastError。
注解
调用 FtpOpenFile 之后,直到调用 InternetCloseHandle,对同一 FTP 会话句柄上的 FTP 函数的所有其他调用都将失败,并将错误消息设置为 ERROR_FTP_TRANSFER_IN_PROGRESS。 调用应用程序使用 FtpOpenFile 返回的 HINTERNET 句柄后,必须使用 InternetCloseHandle 函数将其关闭。
在单个 FTP 会话中只能打开一个文件。 因此,不会返回任何文件句柄,应用程序仅在必要时使用 FTP 会话句柄。
lpszFileName 参数可以是相对于当前目录的部分或完全限定的文件名。
与 WinINet API 的所有其他方面一样,无法从 DllMain 或全局对象的构造函数和析构函数中安全地调用此函数。
注意
wininet.h 标头将 FtpOpenFile 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | wininet.h |
Library | Wininet.lib |
DLL | Wininet.dll |