Probleme fonction System(); plz help :(

Signaler
Messages postés
2
Date d'inscription
samedi 5 juillet 2003
Statut
Membre
Dernière intervention
24 juillet 2003
-
Messages postés
6
Date d'inscription
mercredi 23 juillet 2003
Statut
Membre
Dernière intervention
24 juillet 2003
-
Bonjour, j'ai un soucis avec la portion de code suivante :

char valeur5[1024];
LireB2R(HKEY_CURRENT_USER,"software\\softphonesip","chemin",valeur5,1024);
printf("Repertoire Softphone SIP trouve: ");
printf ("%s", valeur5);
printf("\n");

// cette premiere partie fonctionne tré bien, valeur5 contient une valeur de path ( c:\program files\softphone par exe ) de ma clé ds la base de registre.

char vcc [1024];
sprintf(vcc,"%s\\ant\\bin\\ant all",valeur5);

// ça sa fonctionne aussi apparemment
// car si je fais printf(vcc); il m'affiche bien c:\program files\..etc
// Cependant si je fais un system(vcc); cela ne fonctionne pas
// il me sort 'c:\program' commande non valide..Etc
// En plus simple il a pris en comte c:\program au lieu de
// c:\program files !

Y'a til une solution, j'ai essayé avec GetShortPath ( peut etre mal? ) aussi et ça ne fonctionne pas non plus.
Puis je transformer vcc en c:\progra~1\ au lieu de la chaine avec les espaces?

6 réponses

Messages postés
2
Date d'inscription
samedi 5 juillet 2003
Statut
Membre
Dernière intervention
24 juillet 2003

J'ai oublié de préciser , je suis sous windows2000, MS DOS.
Messages postés
584
Date d'inscription
mardi 26 novembre 2002
Statut
Membre
Dernière intervention
29 mai 2015

Je n'en suis pas sur mais essaie de rajouter des doubles-quotes ( " ) à gauche et à droite de ta chaine de caractères.
Messages postés
1905
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
17 septembre 2012
3
Salut,
Je pense qu'il faut que tu transforme ta chaine en "c:\\program files\\"
C'est a dire mettre le chemin entre " " pour eviter que dos le coupe, et rajouter les \ pour que les ' " 'et '\' de ton chemin ne soient pas supprimés.
Messages postés
6
Date d'inscription
mercredi 23 juillet 2003
Statut
Membre
Dernière intervention
24 juillet 2003

ta deuxieme soluce est la meilleur la fonction systeme prend des noms en format dos donc moins de 8 caracteres sans espace...
c'est la que windobe est une grosse merde car il devrait interdire les nom de repertoire et fichier avec espace...
Messages postés
1905
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
17 septembre 2012
3
Salut,
Windobe comme tu dis, gere tres bien les espaces si la chaine de caractere est entre guillemets.
Messages postés
6
Date d'inscription
mercredi 23 juillet 2003
Statut
Membre
Dernière intervention
24 juillet 2003

-------------------------------
Réponse au message :
-------------------------------

> Salut,
> Windobe comme tu dis, gere tres bien les espaces si la chaine de caractere est entre guillemets.
>
>
>
lui est capable de le gerer mais pas Dos et comme les 9x tourne avec le Dos... y'a un probleme de compatibilite