c++ - 如何取消 CFtpConnection::PutFile?

标签 c++ c windows winapi ftp

FTP server and client (C windows) 使用 UDP 套接字。

服务器使用 CFtpConnection::PutFile 将文件放在客户端上

一个大文件需要几分钟时间,因此客户端需要能够取消 PutFile()。

如果 PutFile() 正忙于传输数据,我如何检查取消 udp 消息?创建另一个线程....?

如有任何正确方向的建议,我们将不胜感激,谢谢。

最佳答案

由于您需要对传输过程进行某种程度的控制,因此您不能采用 PutFile 的高级方法,而必须扮演更直接的角色。

CFtpConnection::OpenFile打开远程文件用于写入,这将为您提供一个 CInternetFile*。然后您将使用 CInternetFile::Write 写入数据由你自己;这还将为您提供停止发送数据并随时关闭连接的选项。

WinInet 文档的这一页提到了 HOWTO 和 MS 知识库中的示例,这可能有助于研究实现。

关于c++ - 如何取消 CFtpConnection::PutFile?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7896746/

相关文章:

c# - pinvoke c 函数 - System.BadImageFormatException

c - 使用 gtk 2.0 的 gcc 错误消息

c - 为什么这个 printf 语句没有被执行

c++ - 为什么在使用继承 C++ 的类中调用 int main 时值不同?

c++ - AddFontMemResourceEx

c - “gnuplot”在 Visual Studio 中不起作用

c++ - 如何将 Win32 HRESULT 转换为 int 返回值?

c++ - 如何在 C++ 中将 Windows 位图转换为 Actionscript 位图

c++ - 基于 CDialog 的 MFC 应用程序仅在主监视器中启动

c++ - 将此从构造函数传递给其他构造函数会在链接时产生 undefined reference