babe59
Messages postés189Date d'inscriptionvendredi 28 mai 2004StatutMembreDernière intervention27 novembre 2015
-
12 févr. 2007 à 14:14
delphi2004
Messages postés6Date d'inscriptionjeudi 26 février 2004StatutMembreDernière intervention29 décembre 2008
-
29 déc. 2008 à 19:36
Bonjour,
J'ai trouvé différentes pistes pour lire un fichier WAV intégré à un fichier ressource mais je n'arrive pas à les faire fonctionner (je suis sous VS2005):
1° : J'ai intégré une fichier "Sound_Erreur.wav" dans les ressources de mon projet.
La ressource s'appelle donc "Sound_Erreur" et mon projet "sound".
2° Comment faire pour jouer le son "Sound_Erreur.wav" avec SoundPlayer :
SoundPlayer s =
new
SoundPlayer();
s.SoundLocation = ???????????????????,
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 12 févr. 2007 à 14:40
Salut,
Jette un coup d'oeil sur cette source. J'utilise dans la classe Tools (si mes souvenirs sont bons) une méthode qui permet de récupérer un fichier son en tant que ressource et de le jouer.
babe59
Messages postés189Date d'inscriptionvendredi 28 mai 2004StatutMembreDernière intervention27 novembre 2015 12 févr. 2007 à 15:02
Si je comprends bien, ta source lit des fichiers situés dans un répertoires spécifiques. Pour ma part j'aimerai intégrer le fichier Wav à mon exe et donc lire la ressource "Properties.
Resources.Sound_Erreur"
babe59
Messages postés189Date d'inscriptionvendredi 28 mai 2004StatutMembreDernière intervention27 novembre 2015 12 févr. 2007 à 15:28
Désolé mais je n'y arrive pas... J'ai une NullReferenceEx. sur sp.load.
Dans ma solution j'ai VS2005 m'a créé un répertoire "Resources" dans ma solution et dans lequel je retrouve "Sound_Erreur.wav"
Voici le source (en fait j'ai simplement remplacé MotusCtrl parsound )
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 12 févr. 2007 à 15:43
La méthode que je t'ai mise est a appelée comme ceci:
Tools.GetSoundFile("MonRepertoire", "MonFichierSon");
Le fichier son doit être intégré dans le projet en tant que ressouces embedded (regarde dans le source encore une fois!).
Si le fichier n'est pas dans un répertoire, alors il faut uniquement donner le nom...
babe59
Messages postés189Date d'inscriptionvendredi 28 mai 2004StatutMembreDernière intervention27 novembre 2015 12 févr. 2007 à 16:49
J'avais tout bien suivi et compris tes explications mais ta dernière remarque ma mis sur la piste. En effet, j'ai utilisé VS2005 pour ajouter toutes mes ressources à mon projet. A noter que l'ajout de ressources par ce moyen entraîne automatiquement la création du fichier "resources.resx" dans "properties" et du répertoire "Resources" dans la solution concernée. Or les ressources de ce répertoire de sont pas embedded contrairement au fichier "resources.resx"... d'où mes soucis.
Question : Dois aussi rendre embedded les images de mon répertoire "Resources" ?
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 13 févr. 2007 à 10:24
Euh, je ne comprends pas la question
Tu peux intégrer des ressources manuellement en les ajoutant dans l'explorateur, il ne faut pas oublier de les rendre "embedded" pour qu'elles soient inclues dans l'assembly lors de la compilation, c'est tout.
Le désavantage de ce système, c'est que les assemblies deviennent rapidement assez volumineuses...
L'avantage c'est que l'utilisateur n'a pas directement accès à la ressource...
babe59
Messages postés189Date d'inscriptionvendredi 28 mai 2004StatutMembreDernière intervention27 novembre 2015 13 févr. 2007 à 11:13
Je n'ajoute pas manuellement mes fichiers dans mon répertoire "Resources" mais j'utilise l'onglet "Ressources" dans les "Properties" de ma solution. En faisant comme cela, je ne gère pas (physiquement) le fichier "Resources.resx" ni les fichiers que j'incorpore dans ma ressource (images, sons ...) : c'est VS qui créé lui même le répertoire "Resources" de ma solution, c'est lui qui insère les fichier dans ce répertoire et c'est aussi lui qui ne met pas embedded les fichiers
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 13 févr. 2007 à 11:48
Si, les ressources sont évidemment embedded, sinon tu n'y aurais pas accès. Mais Visual Studio le fait de manière transparente pour toi.
Pour t'en assurer, ajoute un fichier de 5Mo dans ton projet en tant que ressource (avec le designer), compile et va regarder la taille de l'exe qui est généré....
gulfstreamg450
Messages postés1Date d'inscriptionvendredi 8 juin 2007StatutMembreDernière intervention 1 décembre 2008 1 déc. 2008 à 13:00
Bonjour,
Voici ta réponse. En fait le problème est que Microsoft dans ses MSDN induit les programmeurs en erreur en parlant d'un fichier Manifest qui ne sert en fait à rien et dont on se fiche.
Pour lire une resource son il te suffit d'utiliser l'exemple donné par les MSDN dont voici le code :
Ex. : ton projet s'appelle SoundRes, tu y as créé un dossier nommé "Resources son" qui contient un fichier nommé "monSon.wav".
Il te suffit donc d'écrire :