使用ANSI C在Windows平台上传输FTP文件?

时间:2010-03-18 07:17:21

标签: c windows ftp

我在另一台Windows PC上有一个已知的共享文件夹,我必须使用我的ANSI C程序使用FTP连接将文件传输到该共享文件夹。我需要一些指示 - 请指导我。

2 个答案:

答案 0 :(得分:1)

ANSI C标准不包含任何网络库。如果您可以使用第三方库,那么您需要libcurl或其他一些C网络库,或使用Winsock从头开始创建FTP客户端。

答案 1 :(得分:0)

你应该注意不要混淆共享文件夹和FTP服务器:在Windows上,2有不同的含义(共享文件夹使用SMB协议,也就是Samba)。

对于FTP传输,您应该使用WinINet(它是Windows SDK的一部分)。该库定义了一组函数,用于从Internet检索数据以及上载数据,并支持FTP和HTTP协议。

具体来说,您需要调用InternetOpenUrl()InternetConnect()来打开连接,FtpSetCurrentDirectory()导航到目标目录,然后FtpPutFile()上传文件。最后,使用InternetCloseHandle()关闭连接。

查看the WinINet documentation about FTP sessions on the MSDN