Witam
Potrzebuję napisać program, który będzie pobierał plik z serwera FTP.
Zalogowałem się na serwer wiem jak ustawiać sobie katalogi itp. Ze specyfikacji FTP-a wyczytałem rownież, że do sciagania plików służy komenda RETR jakis_plik. Więc wysyłam takie zapytanie a w buforze otrzymuje
Opening ASCII mode data connection for jakis_plik (486 Bytes).
i to jest wszystko. Nie mam pojęcia w jaki sposób mam odebrać plik i zapisać go na dysk. Proszę o sugestie. Poniżej zamieszczam kod mojej procedury do recv() :
void recive_f(SOCKET sock, char buf[DEFAULT_BUFLEN], int buflen){
int result=0;
result = recv(sock, buf, buflen, 0);
cout<<endl<<result;
ofstream fwrite("pliczek.txt",ios::binary);
if ( result < 0 )
printf("Recv failed: %d\n", WSAGetLastError());
else if ( result == 0 )
printf("Connection closed\n");
cout<<buf;
fwrite.write(buf,1024);
}
a pliku do którego ma niby zapisywać plik mam coś takiego :
150 Opening ASCII mode data connection for jakis_plik (486 Bytes).
đ C : \ D ÂD %= Ŕ×$ Ŕ×$ ” WinSock 2.0
i dalej krzaczki..
To są (jak pewnie widać) początku z programowania socketów w moim wydaniu.