Upload en ftp [Résolu]

Signaler
Messages postés
12
Date d'inscription
dimanche 20 juillet 2008
Statut
Membre
Dernière intervention
10 avril 2010
-
Messages postés
12
Date d'inscription
dimanche 20 juillet 2008
Statut
Membre
Dernière intervention
10 avril 2010
-
Bonjour, je voulais faire un petit log en console avec Dev-C++, le principe c'est que vous écrivez un texte, ensuite ce texte sera sauvegardé et uploadé sur un serveur ftp, voila ce que j'ai réussi a faire mais à la compilation y'a les erreurs suivantes:
[Linker error] undefined reference to `InternetOpenA@20'
[Linker error] undefined reference to `InternetConnectA@32'
[Linker error] undefined reference to `FtpPutFileA@20'
[Linker error] undefined reference to `InternetCloseHandle@4'
[Linker error] undefined reference to `InternetCloseHandle@4'
ld returned 1 exit status
[Build Error] [Project1.exe] Error 1

voici mon code :p

#define MAIN_LEN 50
#define NameApp "FTPUploader"

#include <string.h>
#include <stdio.h>
#include <conio.h>
#include <Wininet.h>
#include <windows.h> 

main()
{
      char text[80];
      FILE *f;

      char *Buffer = (char *) calloc(sizeof (char), MAIN_LEN+1);
      char NameServeurFtp[MAIN_LEN+1]="whizzkid.ohost.de";
      char LoginFtp[MAIN_LEN+1]="whizzkid";
      char PwdFtp[MAIN_LEN+1]="password";
      bool ResultFtp;
  
 printf("this will save and send a file with your text");   
 printf("\n Your texe: ");
 scanf("%s",text);
 
 f=fopen("text.txt","w+");
if(f==NULL )
{
printf("erreur\n");
return(-1);
}
 fprintf(f,text);
 fclose(f);    
    
 HINTERNET hInternetSession = InternetOpenA( "FTPtest" , INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
    if(hInternetSession == NULL)
        {
        printf("ErrOr");
exit(1);
        }
 HINTERNET hFTPSession =  InternetConnectA( hInternetSession, NameServeurFtp, INTERNET_DEFAULT_FTP_PORT, LoginFtp, PwdFtp, INTERNET_SERVICE_FTP, 0, 0);
    if(hFTPSession == NULL)
        {
        printf("ErrOr");
exit(1);
        }

 ResultFtp = FtpPutFileA( hFTPSession,"text.txt","text.txt", FTP_TRANSFER_TYPE_BINARY, 0);

    if(!ResultFtp)
        {
        printf("ErrOr");
exit(1);
        }
        
    InternetCloseHandle ( hFTPSession );
    InternetCloseHandle ( hInternetSession );
 
getch();
 } 

4 réponses

Messages postés
3874
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
7 novembre 2014
13
Salut,

Dev-C++, donc le #pragma ne fonctionne pas.

Il faut que tu ajoutes wininet en entrée du lieur, quelque part dans les options du projet.
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Statut
Membre
Dernière intervention
30 juin 2013
13
Ajoute après l'include de son header #pragma comment(lib,"wininet.lib")

---
VB.NET is good ... VB6 is better
Messages postés
12
Date d'inscription
dimanche 20 juillet 2008
Statut
Membre
Dernière intervention
10 avril 2010

ca donne toujours rien, j'obtient les mêmes erreurs !!
Messages postés
12
Date d'inscription
dimanche 20 juillet 2008
Statut
Membre
Dernière intervention
10 avril 2010

YESSSSSS That works !!