Page 1 sur 1

Bug avec DirectSoundEnumerate

Publié : dim. 28/mars/2004 8:23
par ZapMan
Est-ce que quelqu'un saurait pourquoi j'obtiens un plantage avec ce code ?

Code : Tout sélectionner

Procedure acmCallback(lpGuid,lpcstrDescription,lpcstrModule,lpContext)
  var = lpContext
  ProcedureReturn #false
EndProcedure
If OpenLibrary(0,"dsound.DLL")
  If IsFunction(0, "DirectSoundEnumerateA") 
  lp = 1
    Debug CallFunction(0,"DirectSoundEnumerateA",@acmCallback,@lp)
  Else
    Debug "not a fonction"
  EndIf
Else
  Debug "not a library"
EndIf
:(

Publié : dim. 28/mars/2004 10:05
par julien

Code : Tout sélectionner

Procedure acmCallback(lpGuid,lpcstrDescription,lpcstrModule,lpContext)
  var = lpContext
  ProcedureReturn #false
EndProcedure

If OpenLibrary(0,"dsound.DLL")
  If IsFunction(0, "DirectSoundEnumerateA")
  lp = 1
    Debug CallFunction(0,"DirectSoundEnumerateA",*acmCallback,*lp)
  Else
    Debug "not a fonction"
  EndIf
Else
  Debug "not a library"
EndIf

ça me retourne une valeur negative.

quel est la différence en tre un * et un @ ?

Publié : dim. 28/mars/2004 13:39
par filperj
quel est la différence en tre un * et un @ ?
@MaVariable => retourne l'addresse de MaVariable
*MaVariable => c'est une variable indépendante de MaVariable
Pour récupérer l'addresse d'une proc, il faut écrire les parenthèses: @MaProc(). C'est peut-être ça qui manque, non?

Publié : dim. 28/mars/2004 14:36
par nico

Code : Tout sélectionner

Procedure acmCallback(lpGuid,lpcstrDescription,lpcstrModule,lpContext) 
  var = lpContext
  Debug var
  ProcedureReturn #False 
EndProcedure 
If OpenLibrary(0,"dsound.DLL") 
  If IsFunction(0, "DirectSoundEnumerateA") 
    lp = 5 
    CallFunction(0,"DirectSoundEnumerateA",@acmCallback(),lp) 
  Else 
    Debug "not a fonction" 
  EndIf 
Else 
  Debug "not a library" 
EndIf 

Nicolas est un king

Publié : dim. 28/mars/2004 22:03
par ZapMan
Nico, tu es le plus beau.

Merci, c'est bête comme choux, mais vraiment je n'y aurais pas pensé.

Merci, merci. :D :D :D :D :lol:

Publié : jeu. 01/avr./2004 1:53
par KarLKoX
Je pense que c'est filperj qu'il faudrait remercier, si je puis me permettre :D

Publié : jeu. 01/avr./2004 23:26
par ZapMan
Exact, les deux, en fait.

Merci.