[C++] Probleme avec la commande system

Braho Messages postés 4 Date d'inscription mercredi 18 mai 2005 Statut Membre Dernière intervention 26 mai 2005 - 18 mai 2005 à 13:41
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 - 18 mai 2005 à 14:22
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

ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
18 mai 2005 à 14:22
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.
0
Rejoignez-nous