FTP Problem
-
Hallo!
Habe ein kleines Problem und zwar, habe ich mir meinen FTP Server zusammengebastelt, der Code sieht so aus:
#include <cstdlib> #include <iostream> #include <winsock.h> #include <winsock2.h> #include <windows.h> using namespace std; int gPort = 21; int error = 0; string msg = "USER DarthVader"; string msp = "PASS starwarsrulez"; string dir = "dir"; string help = "help"; string helo = "helo"; int main(int) { SOCKET lhSocket; SOCKADDR_IN lSockAddr; WSADATA wsaData; int lConnect; int lLength; char lData[]="SendData"; if(WSAStartup(MAKEWORD(2,0),&wsaData) != 0) { cout<<"Socket Initialization Error. Program aborted\n"; cin>>error; return 0; } lhSocket = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP); if(lhSocket == INVALID_SOCKET) { cout<<"Invalid Socket "<<GetLastError()<<". Program Aborted\n"<<endl; cin>>error; } memset(&lSockAddr,0, sizeof(lSockAddr)); lSockAddr.sin_family = AF_INET; lSockAddr.sin_port = htons(gPort); lSockAddr.sin_addr.s_addr = inet_addr("127.0.0.1"); lConnect = connect(lhSocket,(SOCKADDR *)&lSockAddr,sizeof(SOCKADDR_IN)); if(lConnect != 0) { cout<<"Connect Error. Program aborted\n"; cin>>error; return 0; } //Sag dem Server hallo weil wir so nett sind :-) send(lhSocket, helo.c_str(),strlen(helo.c_str()),0); Sleep(2000); char temp[512]; int bytes = 0; while (bytes == 0) { bytes = recv(lhSocket,temp,sizeof(temp)-1,0); temp[bytes] = '\0'; cout<<temp; } Sleep(1000); send(lhSocket, msg.c_str(),strlen(msg.c_str()),0); Sleep(1000); send(lhSocket, msp.c_str(),strlen(msp.c_str()),0); int bytes2; while (true) { bytes2 = recv(lhSocket,temp,sizeof(temp)-1,0); temp[bytes] = '\0'; cout<<temp; } cin>>bytes; closesocket(lhSocket); return 0; }Habe einen FTP Server local laufen und Benutzername und Passwort stimmen eben mit den obigen überein.
Wenn ich das Programm ausführe steht aber nur:220 StarWars III
Das bedeutet doch, dass ich nicht beim Server eingeloggt bin, denn wenn ich es mit Telnet versuche bekomme ich, wenn ich eingeloggt bin folgende Meldung:
230 User DarthVader logged in.
Wo liegt mein Fehler?
Was mache ich, wo wie falsch?Danke schonmals für die Hilfe!
lg thomas
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Doppelpost ?
Weiter gehts hier: http://www.c-plusplus.net/forum/viewtopic-var-t-is-158222.html(btw. du hast diesmal "FTP Server" mit "FTP Client" vertauscht ;D)