FTP et fichiers

Signaler
Messages postés
86
Date d'inscription
mercredi 1 novembre 2000
Statut
Membre
Dernière intervention
21 janvier 2009
-
Messages postés
875
Date d'inscription
samedi 17 mai 2003
Statut
Membre
Dernière intervention
22 juin 2012
-
j'ai créer un programme qui recherche des mots clée et affiche les lignes qui les contint dans des fichiers log qui eux sont contenu dans un serveur ftp

COMMENT JE FAIT POUR CELA pour qu'il me prends le fichier du serveur le transferer sur mon poste pour que je recherche le mot.

voici mon code mais il ne semble pas aimer dev-c++

#include <stdio.h>
#include <WinINet.h>
main()
{
char *Buffer = (char *) calloc(sizeof (char), MAIN_LEN+1);
char NameServeurFtp[MAIN_LEN+1]="199.100.100.4";
char LoginFtp[MAIN_LEN+1]="FTPLOG";
char PwdFtp[MAIN_LEN+1]="FTPLOG";
bool ResultFtp;
char szLine[500];
char szFind[500];
char filename[260];
char caract,adresse;
char fullpath[260];
char caractere;
char fullpath1[260];
char fullpath2[260];
int i,j,longueur_txt_2,longueur_txt_1,RepRecherche;
char texte_1 [500];
char texte_2 [500];
char echange;



/* Les handles */
HINTERNET hInternetSession; /* handle to internet connection */
HINTERNET hFTPSession;
hInternetSession = InternetOpen ( NameApp , INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
if ( hInternetSession == NULL )
{
/* Erreur dans l'ouverture de la connexion */
printf ( "Erreur dans l'ouverture de la connexion " );
exit;
}

/* Connexion au serveur FTP */
hFTPSession = InternetConnect ( hInternetSession, NameServeurFtp, INTERNET_DEFAULT_FTP_PORT, LoginFtp, PwdFtp, INTERNET_SERVICE_FTP, 0, 0);
if ( !hFTPSession )
{
printf( "Erreur dans l'ouverture de la connexion ftp " );
exit;
}
else
{




debut_boucle2 :
system("cls");
printf(" ***************************************************************\n");
printf(" * *\n");
printf(" * MOTEUR DE RECHERCHE D'INFORMATIONS DIVERS DANS LES ARCHIVES *\n");
printf(" * *\n");
printf(" ***************************************************************\n\n");
printf ("saisie le jour demander (exemple 01/02/02 = 010202) ou CTRL+C pour sortir : \n");
gets (texte_1);
strcpy(texte_2,texte_1);
longueur_txt_2 = strlen (texte_2);
j = longueur_txt_2 - 1;
longueur_txt_1 = strlen(texte_1);
for(i=0; i<longueur_txt_1; i+=2)
{
if(i+1<longueur_txt_1)
{
texte_2[i] = texte_1[longueur_txt_1-i-2];
texte_2[i+1] = texte_1[longueur_txt_1-i-1];
}
else
{
texte_2[i] = texte_1[longueur_txt_1-i-1];
}


texte_2[longueur_txt_1] = '\0';


}


strcpy(fullpath2, ".log");
strcat(texte_2,fullpath2);
strcpy(fullpath, "in");
strcat(fullpath,texte_2);
system("cls");
debut_boucle :
ResultFtp = FtpGetFile ( hFTPSession, fullpath, DirToRecupFile, NULL, NULL,FTP_TRANSFER_TYPE_ASCII, NULL);
if ( ResultFtp )
{
printf("saisir le mot rechercher en respectant les minuscules et les MAJUSCULES\n");
scanf("%s",&szFind);
while(fgets(szLine, 500, lecture) != NULL)
{
if(strstr(szLine, szFind) != NULL)
{
printf("\n%s",szLine);
getch();
}
else
{
printf( hDlgSend ,"Erreur de date!!!!","Erreur",);
}
printf("\n\nApuyez sur retour.");
fflush(stdin); scanf("%c",&caract);
}
/* Fermeture de la connexion ftp */
InternetCloseHandle ( hFTPSession );
}
/* Fermeture de la session */
InternetCloseHandle ( hInternetSession );

return;
}



InternetCloseHandle ( hFTPSession );
}
/* Fermeture de la session */
InternetCloseHandle ( hInternetSession );

return;
}

merci de votre aide et si c'est possible de corriger mes fautes

2 réponses

Messages postés
86
Date d'inscription
mercredi 1 novembre 2000
Statut
Membre
Dernière intervention
21 janvier 2009

oublier le message d'avant , je recherche juste un programme en C qui tranferer les fichiers a un dossier sur le poste et ne dit pas que ce type de programme existe sur ce site car j'ai essayer pendant une journée de les faire marcher et je n'arrive pas

si quelqu'un à ce programme en C pourrait - il me l'envoyer
merci d'avant
Messages postés
875
Date d'inscription
samedi 17 mai 2003
Statut
Membre
Dernière intervention
22 juin 2012

Ca ma l'air assez compliqué tous ça, juste pour aller chercher un fichier sur un ftp. Ca fait un moment que j'ai pas touché à cette librairie donc je peux pas trop t'aider sur ce point (en plus la flem).
Ms tu peux contourner le pb en écrivant dans un fichier texte :
OPEN ip port
USER ton_login
PASS ton_passwort
GET le_fichier
BYE

Une fois le fichier créé, il te reste plus k faire un system("ftp -s file.txt")
Et voilà !

Ms je pense que tu ferai mieux d'utiliser la librairie winet.h et de te casser un minimum le cerveau !!!

Have Fun ...