Comment mettre un fichier wav/midi dans un exe vb ?

cs_hagal Messages postés 5 Date d'inscription mercredi 10 juillet 2002 Statut Membre Dernière intervention 18 février 2005 - 18 févr. 2005 à 08:10
cs_hagal Messages postés 5 Date d'inscription mercredi 10 juillet 2002 Statut Membre Dernière intervention 18 février 2005 - 18 févr. 2005 à 19:22
Question pas évidente pour le vb.

Je cherche à créer un exécutable ayant toutes les données dedans. (sauf bien sûr les runtimes).

Comment faire pour inclure un fichier wav ou midi en tant que data et pouvoir le lire ?

C'est possible avec une image...

Merci

2 réponses

BasicInstinct Messages postés 1470 Date d'inscription mardi 5 février 2002 Statut Membre Dernière intervention 20 octobre 2014 12
18 févr. 2005 à 10:30
'lut

faut utiliser un fichier de ressources

gestionnaires de complements \\ Editeur de ressources

mais ca va considerablement alourdir ton exe...

BasicInstinct
0
cs_hagal Messages postés 5 Date d'inscription mercredi 10 juillet 2002 Statut Membre Dernière intervention 18 février 2005
18 févr. 2005 à 19:22
Salut,

Merci, c'est bien ça. A priori seulement les wav fonctionnent au niveau du son. donc effectivement c'est gros... dommage.

Je mets le code pour ceux qui seraient interessés :

1) Editeur de Ressources VB
-> le faire apparaître :
Compléments / Gestionnaire de compléments... / Editeur de ressources VB

-> le démarrer :
Outils / Editeur de ressources

-> charger le wav :
Icone "Ressources personnalisées"
choisir le wav
Noter les infos : l'Id est 101 dans "CUSTOM"

2) Le Code VB

'En haut du code (Général)
Const SND_MEMORY = &H4
Const SND_ASYNC = &H1
Const SND_NODEFAULT = &H2
Const SND_LOOP = &H8
Const SND_PURGE = &H40
Private Declare Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" (lpData As Any, ByVal hModule As Long, ByVal dwFlags As Long) As Long
Private BySnd() As Byte

'Initialisation : (à modifier si besoin)
BySnd = LoadResData(101, "CUSTOM")

'Lecture proprement dite :
PlaySound BySnd(0), 0, SND_MEMORY Or SND_ASYNC Or SND_NODEFAULT Or SND_LOOP

'Arret :
PlaySound BySnd(0), 0, SND_PURGE

Merci et A+
0
Rejoignez-nous