[C++] Probleme avec la commande system

Signaler
Messages postés
4
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
26 mai 2005
-
Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
-
Bonjour,


Je suis en train de faire une fonction qui permet de changer de ligne sur un routeur. J'ai à ma disopsition un .bat et je voulais utiliser la commande system pour juste faire un c/c du .bat et le mettre dans ma fonction. Sauf qu'il me met comme erreur qu'il ne peut pas ajouter 2 pointeurs. Voici le code :



void CProgDlg::confip( int poste, int ligne )
{
char* reseau = "Connexion au r‚seau local" ;


system( "netsh interface ip set address name " + reseau + " source static addr = 192.168.0." + poste + " mask = 255.255.255.0" ) ; system( "netsh interface ip set address name " + reseau + " gateway " + ligne + " gwmetric = 1" ) ; system( "netsh interface ip set dns name " + reseau + " source static addr = none " ) ; system( "netsh interface ip set dns name " + reseau + " source static addr = 192.168.0." + poste + " index=1 " ) ; system( "netsh interface ip add dns name " + reseau + " addr 192.168.0." + poste + " index=1 " ) ;
system( "netsh interface ip show config" ) ;


}

Merci bien pour les futures réponses.

1 réponse

Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
Eh oui on ne peut pas additionner comme cela des chaînes de caractères, il faut passer par un objet string, String, CString (dépend des lib utilisées, mais je dirais CString car semble MFC) et réaliser les concaténations dessus.
Tu peux également utiliser sprintf pour fotmatter une chaîne ou strcat pour concaténer 2 chaînes.