Probleme system();

Signaler
Messages postés
19
Date d'inscription
samedi 11 novembre 2006
Statut
Membre
Dernière intervention
12 mai 2011
-
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
-
bonjour mon probleme est :

quand j'utilise system("music.mp3") toutes les instructions qui suivent ne s'effectuent que si je ferme la musique precedement ouverte !

commen faire pour eviter cela ???

PLEASE HELP ME !

PS :je travaille en console sous dev c++

12 réponses

Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
system("music.mp3") ??????
Si tu veux lire de la musique, essais ceci:
http://www.codyx.org/snippet_lecture-fichier-multimedia_101.aspx

C++ (@++)<!--
Messages postés
19
Date d'inscription
samedi 11 novembre 2006
Statut
Membre
Dernière intervention
12 mai 2011
1
non music.mp3 et le nom de mon fichier mp3
ca fait pareil si j'ouvre un fichier texte ex:system("texte.txt");
le fichier texte est appelé alor texte
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
J'explique.
Suffis de copier-coller le code (attention à la faute: bool Playing = false) puis d'utiliser PlayFile pour jouer un mp3. Tout le code qui suivera sera executer en même temps sans problème. Pour stopper le mp3, suffis d'utiliser StopPlaying.

P.S. Il faut inclure windows.h dans ton code.
P.S 2 C'est un code C++. Si tu veux du C, il faut remplacer les bool par BOOL et false et true par FALSE et TRUE.

C++ (@++)<!--
Messages postés
19
Date d'inscription
samedi 11 novembre 2006
Statut
Membre
Dernière intervention
12 mai 2011
1
ce que je veux dire c'est que lorsque j'utilise system(fichier.type);
il fo ke le fichier ouver se ferme avant de lire la suite du code et c'est ce ke je ne ve pa justement
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
Je comprend. Je ne crois pas que ce sois possible. system a l'aire
d'etre syncronome ce qui signifie que tout ton programme stop lorsque system est actif.

J'ignore ce que tu veux faire mais il faudra probablement trouver un autre moyen.

C++ (@++)<!--
Messages postés
19
Date d'inscription
samedi 11 novembre 2006
Statut
Membre
Dernière intervention
12 mai 2011
1
ok merci
Messages postés
256
Date d'inscription
mardi 25 novembre 2003
Statut
Membre
Dernière intervention
6 novembre 2009
1
Bonsoir,
Un bon thread devrait faire l'affaire non ?

Jcbé[^]
Messages postés
19
Date d'inscription
samedi 11 novembre 2006
Statut
Membre
Dernière intervention
12 mai 2011
1
c quoi un thread ?peut tu me donner le code stp TMONOD ?
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
Oui en effet.
Cependant, ça dépend beaucoup de ce qu'il veut faire. Si il veut jouer un fichier musical, un bon code fera l'affaire. Ce que je veux dire c'est qu'il est très facile de se passer de system et ne pas à avoir à créé des threads supplémentaire inutilement.

C++ (@++)<!--
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
Un thread permet d'executer une fonction ou un processus en
"parallèle". C'est ce qui fais que tu peux utiliser winamp et IE "en
même temps". C'est relativement simple à utiliser:


DWORD __stdcall fonction (LPVOID param)

{

    ...


    return 0;

}



int main ()


{


    HANDLE thread;


    ...

    thread = CreateThread(0, 0, fonction, 0, 0, 0);


    ...


    CloseHandle(thread);


    ...


}



Ici, c'est fonction qui sera executer en "parallèle".


Quand tu as finis avec ton thread, tu le ferme grâce à CloseHandle



Information ICI

C++ (@++)<!--
Messages postés
452
Date d'inscription
jeudi 4 décembre 2003
Statut
Membre
Dernière intervention
19 décembre 2008
12
Je me trompe ou CreateProcess ne ferait pas l'affaire?
Vive le C
Savon
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
Aucune idée. On ne sais pas ce qu'il veut faire.
Cependant, si on va voir quelque topic plus haut, il pause une question sur WinExec.
BruNews lui a répondue la même chose.

C++ (@++)<!--