Variable dans system(); en C

shepard41 Messages postés 15 Date d'inscription   Statut Membre Dernière intervention   -  
0beron Messages postés 76 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
voila j'ai créer un programme de "recherche"
mais voila quand j'essaye de mettre une variable dans
system("start %s"), chaine; ou system(chaine);

il me met que le programme que je demande d'ouvrir n'est pas reconnu
comment faire? :/
merci pour vos réponses
voici mon code :
#include <stdio.h>   
#include <stdlib.h>   
#include <windows.h>   
#include <conio.h>    
#include <sys/types.h>   
#include <sys/stat.h>   
#include <fcntl.h>    

int main(){   
char prog[200];   
int a;   
printf("quel programme voulez vous lancez?\n");   
scanf("%s", prog);   
    FILE* fichier = NULL;   
    char chaine[400] = "";   
    fichier = fopen(("%s.txt", prog), "r");   
     if (fichier != NULL)   
    {   
        fgets(chaine, 400, fichier);    
        printf("%s\n", chaine);    
        Sleep(1000);   
        fclose(fichier);}   
        else{Sleep(2000);printf(" Erreur Fichier introuvable, ajoutez le a la biblioteque et n'oublier pas le _\n si il y a un espace\n apuyer sur 1 pour l'ajouter a la bibliotheque\n");scanf("%d", &a);if(a==1){system("start ajouter.exe");getch();};}   
        system(chaine);   
        Sleep(6000);}   


les fichiers lut par le programme sont sous cette forme :
"\"C:\\Program Files\\Ccleaner\\Ccleaner.exe\""   


il y a 2 programme appeler par ce programme mais d'aucune importance

1 réponse

0beron Messages postés 76 Date d'inscription   Statut Membre Dernière intervention   56
 
Bonjour,
Je n'ai pas l'habitude de programmer sous windows, mais pourquoi avoir mis un slash avant le chemin de l'executable? ça ne fonctionne pas mieux avec simplement "C:\\Program Files\\Ccleaner\\Ccleaner.exe\"
Sinon la syntaxe correcte de la fonction systeme est bien system(chaine);
0