Bonjour à tous.
J'espère que je suis dans le bon forum : je développe en VB6 sous Windows 10, mais je suis venu ici car il me semble que le problème dépend plutôt de mon fichier winmm.dll que d'autre chose.
Ce programme a déjà marché. Il commence par rechercher les microphones disponibles, puis l'utilisateur en choisit un et le programme est sensé traiter ce qui arrive sur ce micro. S'il n'y a pas de micro disponible, le programme le dit (et ne fait rien, bien sûr).
Or là, il y a bien un micro (et quand, dans le gestionnaire ed périphériques, je dis d'écouter ce micro, ça marche), mon programme le voit, donc il exécute l'API waveInOpen avec les paramètres qui sont là depuis toujours, et ça ne marche pas.
Je passe en mode debug, et je trouve que le code retour de waveInOpen vaut 1. Or voici ce que donne la doc µ$ :
J'ai eu beaucoup de mal à trouver des lignes de code d'origine µ$ pour l'énumération MMSYSERR, mais j'en ai quand-même trouvé qui ressemblent à ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 Return Value Returns MMSYSERR_NOERROR if successful or an error otherwise. Possible error values include the following. Return code Description MMSYSERR_ALLOCATED Specified resource is already allocated. MMSYSERR_BADDEVICEID Specified device identifier is out of range. MMSYSERR_NODRIVER No device driver is present. MMSYSERR_NOMEM Unable to allocate or lock memory. WAVERR_BADFORMAT Attempted to open with an unsupported waveform-audio format.
Est-ce que vous, ça vous aurait aidé à trouver ce qui ne va pas ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 MMSYSERR_NOERROR = 0x0 MMSYSERR_ERROR = (NOERROR + 1) MMSYSERR_BADDEVICEID = (NOERROR + 2) MMSYSERR_NOTENABLED = (NOERROR + 3) MMSYSERR_ALLOCATED = (NOERROR + 4) MMSYSERR_INVALHANDLE = (NOERROR + 5) MMSYSERR_NODRIVER = (NOERROR + 6) MMSYSERR_NOMEM = (NOERROR + 7) MMSYSERR_NOTSUPPORTED = (NOERROR + 8) MMSYSERR_BADERRNUM = (NOERROR + 9) MMSYSERR_INVALFLAG = (NOERROR + 10) MMSYSERR_INVALPARAM = (NOERROR + 11) MMSYSERR_HANDLEBUSY = (NOERROR + 12) MMSYSERR_INVALIDALIAS = (NOERROR + 13) MMSYSERR_BADDB = (NOERROR + 14) MMSYSERR_KEYNOTFOUND = (NOERROR + 15) MMSYSERR_READERROR = (NOERROR + 16) MMSYSERR_WRITEERROR = (NOERROR + 17) MMSYSERR_DELETEERROR = (NOERROR + 18) MMSYSERR_VALNOTFOUND = (NOERROR + 19) MMSYSERR_NODRIVERCB = (NOERROR + 20)
AMIcalement.
Partager