C++ WinINET FtpPutFile Код ошибки 3
У меня проблема с WinINET FtpPutFile()
функция.
Вот код:
#include <Windows.h>
#include <wininet.h>
#include <iostream>
#pragma comment(lib, "Wininet")
using namespace std;
void FileSubmit()
{
HINTERNET hInternet;
HINTERNET hFtpSession;
hInternet = InternetOpen(NULL, INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
if (hInternet == NULL)
{
cout << "Error: InternetOpen = " << GetLastError() << endl;
}
else
{
hFtpSession = InternetConnect(hInternet, "host", INTERNET_DEFAULT_FTP_PORT, "name", "pass", INTERNET_SERVICE_FTP, 0, 0);
if (hFtpSession == NULL)
{
cout << "Error: InternetConnect = " << GetLastError() << endl;
}
else
{
if (FtpPutFile(hFtpSession, "C:\\Utenti\\Luca\\Desktop\\pop.txt", "pop.txt", FTP_TRANSFER_TYPE_BINARY, 0))
cout << "File send" << endl;
else
cout << "Error: FtpPutFile = " << GetLastError() << endl;
InternetCloseHandle(hFtpSession);
}
InternetCloseHandle(hInternet);
}
}
int main()
{
FileSubmit();
return 0;
}
Программа подключается к Интернету, но, похоже, не может отправить файл. GetLastError()
возвращает код ошибки 3. Может быть, потому что я использую неправильный синтаксис пути?
1 ответ
GetLastError
возврат 3 означает ПУТЬ НЕ НАЙДЕН: https://msdn.microsoft.com/en-us/library/windows/desktop/ms681382(v=vs.85).aspx
Попробуйте вместо этого передать файл из рабочей директории программы.