Comment mettre un son en Arriere plan dans un programme C

Comment mettre un son en Arriere plan dans un programme C - C++ - Programmation

Marsh Posté le 24-02-2003 à 19:58:03    

Je suis en train de faire un petit programme en C et quand je lance mon son il me le lance automatiquement en ouvrant winam ou le magnetophone ou uatre...
Yaurait une commande pour qu'il me balance mon son en Arriere plan sans rien ouvrir et sans quitter mon prog??
Merci!!!

Reply

Marsh Posté le 24-02-2003 à 19:58:03   

Reply

Marsh Posté le 24-02-2003 à 20:08:02    

ShellExecute() avec ton mp3 et "open" je pense que ça marche, il faut aussi le faire de manière asynchrone et ça je ne sais plus si cette fonction le fait ou pas (thread sinon ?)...

Reply

Marsh Posté le 24-02-2003 à 20:13:22    

ca marche pas t'a pas un code qui marche?
fo pas de librairie particuliere?

Reply

Marsh Posté le 24-02-2003 à 20:19:29    

ShellExecute(handle, "open", "ton.mp3", NULL, NULL, SW_SHOWNORMAL);
 
ça marche pas ? normalement si tu as un programme qui a associé tes mp3 il devrait se lancer automatiquement, enfin j'ai pas essayé mais je sais qu'avec un .txt ça marche ça m'ouvre le bloc note et le fichier dedans
 
Shellapi.h
Shell32.lib


Message édité par antsite le 24-02-2003 à 20:20:13
Reply

Marsh Posté le 24-02-2003 à 20:31:14    

La fonction PlaySound doit correspondre à ce que tu recherche.


---------------
each day I don't die is cheating
Reply

Marsh Posté le 24-02-2003 à 20:39:28    

Oui pour le wav c'est beaucoup mieux d'utiliser PlaySound ou sndPlaySound


Message édité par antsite le 24-02-2003 à 20:39:50
Reply

Marsh Posté le 24-02-2003 à 21:34:41    

vous avez un exemple de code en C svp avec playsound?

Reply

Marsh Posté le 24-02-2003 à 22:23:54    

Ca dépend d'où se situe ton son !
 
Si c'est un fichier externe :

Code :
  1. PlaySound( TEXT("C:\\Chemin\\vers\\mon\\fichier\\son.wav" ), NULL, SND_ASYNC | SND_FILENAME );


 
Si c'est une ressource contenue dans ton application :

Code :
  1. PlaySound( MAKEINTRESOURCE(ID_DE_MON_SON), ghMonHandleDeResources, SND_ASYNC | SND_RESOURCE );


 
Enfin tu peux jouer un des son système :

Code :
  1. PlaySound( SND_ALIAS_SYSTEMSTART, NULL, SND_ASYNC | SND_ALIAS_ID );  // moins sûr de celui là, il faut faire des tests


---------------
each day I don't die is cheating
Reply

Marsh Posté le 12-03-2003 à 10:49:00    


Je suis en train de traviller sur un projet en c++, où il faut mettre une musique de fond.
J'ai voulu utiliser la fonction playsound, et même en suivant les conseils données plus hauts, impossible d'éxécuter : il semblerait que le compilateur ne trouve pas le code de cette fonction!
on obtient alor l'erreur :
 
"unresolved external symbol __imp__PlaySoundA@12"
 
re-lou!!!
shui blokée là..
 
et pourtant, dans mon programme test, g mis vraiment un code bateau!
 
un include de windows.h, puiske c là ke se trouve le code de la fonction,
et un main, avec juste le lancement de playSound!
 
 
Y a t il kelkun ki verrait une soluce à mon probleme?
 
merci d'avance!

Reply

Marsh Posté le 12-03-2003 à 10:53:07    

Et avec la libSDL et SDL_sound ca doit etre plus facile ;)
 
http://libsdl.org/

Reply

Marsh Posté le 12-03-2003 à 10:53:07   

Reply

Marsh Posté le 12-03-2003 à 13:23:45    


ok!
en me baladant sur d'autre formums, g réussi à trouver la réponse à ma question : il fallait inclure une librairie (winmm.h) à visual studio!!!!
j'espère que les prochaines personnes qui se trouveront dans la même galère que moi tomberont sur ce message pour éviter de trop se galérer...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed