C ++使用WinINet上传到FTP服务器

时间:2014-02-24 12:49:42

标签: c++ ftp wininet

我现在已经搜索了2个小时,我似乎无法弄清楚如何只使用FTP服务器上传文件。

我更喜欢使用WinINet,因为我是C ++和Microsoft Visual Studio的新手(我不是编程新手,只是C ++)

我真正需要的是一个如何使用FTP服务器上传文件的工作示例。我在过去的2个小时里一直在网上,我找不到任何东西。

我尝试了很多不同的库和东西,但似乎都没有用,而且很多都已经过时了。

无论如何,如果您分享使用FTP上传C ++文件的知识,链接或经验,我真的很感激。

谢谢-Alex Benoit

1 个答案:

答案 0 :(得分:2)

想出来。这是我正在使用的代码

#include <wininet.h> 
#pragma comment(lib, "Wininet")
void FileSubmit()
    {
        HINTERNET hInternet;
        HINTERNET hFtpSession;
        hInternet = InternetOpen(NULL, INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
        if (hInternet == NULL)
        {
            cout << "Error: " << GetLastError();
        }
        else
        {
            hFtpSession = InternetConnect(hInternet, "server", INTERNET_DEFAULT_FTP_PORT, "user", "pass", INTERNET_SERVICE_FTP, 0, 0);
            if (hFtpSession == NULL)
            {
                cout << "Error: " << GetLastError();
            }
            else
            {
                if (!FtpPutFile(hFtpSession, "C://file.txt", "/file.txt", FTP_TRANSFER_TYPE_BINARY, 0))
                {
                    cout << "Error: " << GetLastError();
                }
            }
        }
    }