(la 3.93 se contentait de planter...)ERROR [invalid memory access]
la fonction concernée est tiré de mes fonctions Wave qui sont ici:
http://purebasic.hmt-forum.com/viewtopic.php?t=3123
Code : Tout sélectionner
Procedure PlayWave(*dsw.DirectSoundWave, Looping.l)
Protected Play.l
If InitWave() And IsWave(*dsw)
If Looping
Looping = #DSBPlay_Looping
EndIf
*dsw\Sound\SetCurrentPosition(0)
*dsw\Sound\Play(0, 0, 0)
Play = #True
EndIf
ProcedureReturn Play
EndProcedure
Si on met la ligne précédente en commentaire le problème ne survient pas. Alors j'ai essayé de mettre en évidence le problème à grand renforts de Debug et finalement le pointeur *dsw prend la valeur 0 apres le SetCurrentPosition()*dsw\Sound\Play(0, 0, 0)
Code : Tout sélectionner
Procedure PlayWave(*dsw.DirectSoundWave, Looping.l)
Protected Play.l
If InitWave() And IsWave(*dsw)
If Looping
Looping = #DSBPlay_Looping
EndIf
Debug *dsw
*dsw\Sound\SetCurrentPosition(0)
Debug *dsw
*dsw\Sound\Play(0, 0, 0)
Play = #True
EndIf
ProcedureReturn Play
EndProcedure
Dri
