Pri pokúšaní nakopírovať súbor na ftp na endore mi to vždy dá chybu 12003. Pod stránky Microsoftu (https://support.microsoft.com/en-us/kb/168492) som skúšal použiť INTERNET_FLAG_PASSIVE ale táto možnosť mi nijako nefunguje. Kód som skúšal niekoľko razi upraviť a aj tak mi to dalo stále rovnakú chybu. Aktuálne kód vyzerá takto. Hodnotu ftp som skúšal tiež ako "/ftp.txt"
#include <iostream>
#include <windows.h>
#include <wininet.h>
#include <time.h>
#pragma comment(lib,"wininet.lib")
using namespace std;
void main()
{
HINTERNET hInternet;
HINTERNET hFtpSession;
LPWSTR ftpserver = L"kocicka.endora.cz", user = L"user", password = L"password", pc = L"ftp.txt", ftp = L"ftp.txt";
hInternet = InternetOpen(NULL, INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
Sleep(1000);
if (hInternet == NULL)
{
cout << "Error1: " << GetLastError();
}
else
{
hFtpSession = InternetConnect(hInternet, ftpserver, INTERNET_DEFAULT_FTP_PORT, user, password, INTERNET_SERVICE_FTP, 0, 0);
Sleep(1000);
if (hFtpSession == NULL)
{
cout << "Error2: " << GetLastError();
}
else
{
if (!FtpPutFile(hFtpSession, pc, ftp, FTP_TRANSFER_TYPE_BINARY, 0))
{
cout << "Error3: " << GetLastError();
}
}
}
InternetCloseHandle(hInternet);
InternetCloseHandle(hFtpSession);
system("PAUSE");
}
Zároveň ak by ste mali nejaký funkční kód ktorý by fungoval a bol by cez knižnicu WiniNet tak mi ho môžete poslať.