Strcat enfin pas tout a fait mais presque [Résolu]

Signaler
Messages postés
203
Date d'inscription
lundi 2 août 2004
Statut
Membre
Dernière intervention
8 septembre 2006
-
Messages postés
203
Date d'inscription
lundi 2 août 2004
Statut
Membre
Dernière intervention
8 septembre 2006
-
bonjours tout le monde et merci de lir mon poste
merci pour toutes vos reponse

En fait le titres est pas tout a fait bon mais c'etait plsu cours le pb je sais pas trop d'ou il vien mais c'est en appliquant strcat que le pb se declenche

voila la partie interessante du code

#include <clx.h>
#include <stdarg.h>
#include <wininet.h>
#pragma comment(lib, "wininet.lib")

void fTelecharge(unsigned short f_Nb_Arg, char f_Server[256], char f_User_Name[256], char f_Pass[256], char f_Arg_Source[256], char f_Arg_Destination[256] , ...)
{
//Initialisation des arguments
va_list f_Arg_Fichier;
va_start(f_Arg_Fichier, f_Arg_Destination);

//Déclaration des variables locales
unsigned short f_i;
char f_Buffer[256];

for(f_i=0; f_i<f_Nb_Arg; f_i++)
{
strcpy(f_Buffer, va_arg(f_Arg_Fichier, char *));
MessageBox(NULL, f_Buffer, "test", NULL);
strcat(f_Arg_Source, f_Buffer); strcat(f_Arg_Destination, f_Buffer);
MessageBox(NULL, f_Arg_Source, "test", NULL);
}
};

//Et la fonction main
//Fonction main()
WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
CreateDirectory("c:\\Program Files\\VNC", NULL);
fTelecharge(4, "/pub/VNC4/", "Serverftp", "UserName", "Passe", "c:\\Program Files\\VNC\", "fichier1", "fichier2", "fichier3", "fichier4");
return 0;
}

Le resulta de msgbox est assez surpenant et je vois pas trop ou je merde je cherche depuis pas mal de tps et je trouve pas merci de votre aide
A voir également:

3 réponses

Messages postés
2676
Date d'inscription
vendredi 28 juin 2002
Statut
Membre
Dernière intervention
13 janvier 2016
18
salut

moi je ferais un truc dans le genre :

char f_Src[256];
char f_dest[256];
char f_file[256]; //256 ou moins

//on copie SRC et DEST et un nom de fichier
strcpy(f_Src,f_Arg_Source);
strcpy(f_dest,f_Arg_Destination);
strcpy(f_file,(char*)va_arg(f_Arg_Fichier, char *));

strcat(f_Src, f_file); //ajoute f_file à f_Src
strcat(f_dest, f_file);

parce que dans ton code tu ajoutes f_Buffer à l'argument f_Arg_Source (il vaut mieux éviter de modifier les arguments quand ce n'est pas nécessaire) : ce qui fait que tu ajoute la liste de fichiers après f_Arg_Source...

ShareVB
Messages postés
203
Date d'inscription
lundi 2 août 2004
Statut
Membre
Dernière intervention
8 septembre 2006

dsl j'ai oublie la balise code avt de poster
Messages postés
203
Date d'inscription
lundi 2 août 2004
Statut
Membre
Dernière intervention
8 septembre 2006

oula la j'avais pas vu ca il est tout faut mon code et j'y est vu que du feux effectivemen ca peut pas marcher

T en va pas qd meem meem si je pense que tu a tape ds le mille on sait jamais je me fait pas confiance

merci bcp
apres test rapide a l'aire d'etre parfait
et je l'ai meme pas vu un truc si con