C++ inscrire dans le cmd

Résolu/Fermé
Maz - 26 mars 2012 à 12:00
 Maz - 27 mars 2012 à 16:29
Bonjour,


Je développe sous VisualStudio 2010.
Je souhaiterais lancer un programme, dans le cmd, appelé robocopy.
Son but est de copier un répertoire source vers un repertoire destinataire.
Mes informations sur le repertoire source et destinataire sont contenues dans un txt.

pour lancer le cmd, j'utilise la commande suivante :
system("robocopy c:\source c:\destinataire");

Le code suivant lance robocopy et copy le repertoire source vers le destinataire.
Je cherche à utilliser cette commande, mais sans inscrire en brut le dossier source et destinataire.
Je souhaiterais qu'il récupere le chemin des repertoire dans le txt.
Ci-dessous, une partie l'apparence du txt :

[config]
central="\\source\"
cible="\\destinataire\"


Une idée?
A voir également:

1 réponse

Je pensais récupéré les information avec un fstream.
Le problème que je rencontre est que je vais installer ce soft sur plusieurs postes et donc les répertoire copiés seront différents mais tous sous le c:
Je cherche donc comment récupérer dans mon fichier les liens qui commencent par c:\
Il me manque la commande
if(chaine1 commence par c:\)

Quelqu'un sais comment obtenir ça?
0
Le probleme est le \ du c:\ ou du \\
Car si je lance une recherche dans le fichier txt, le moment ou ma variable = "\\" il ne trouve pas.
Ca fonctionne avec le "C", le ":", mais pas avec le "\"
Je les ai testés un par un.
Je cherche donc comment le faire entrer dans ma boucle if(chaine1 == "\\" || chaine1 == "c:\")
Ma chaine, lorsque je l'affiche, me renvoie bien \\ ou c:\ mais il ne s'y arrete pas. Ma condition de ma boucle est donc fausse. Mais je ne comprends pas..
0
Bon, pour ceux que ca interesse, j'ai trouvé.
Il suffit tout simplement de doubler les \
par exemple pour la condition :
if(chaine1 == "c:\")
Il faut écrire
if(chaine1 == "c:\\")
Donc si vous avez \\ il faut mettre \\\\
Cependant j'ignore pourquoi... Désolé.
0