Hola amigos Feliz Navidad! Mi duda es la siguiente:
Estoy creando un reproductor + efectos para .wav haciendo uso de una series de buffer de memoria de tipo short. Al principio, cree mi aplicacion sin clases haciendo lo siguiente,y consiguiendo reproducir mi archivo wav sin problemas una y otra vez:
Código Delphi
[-]
void __fastcall TForm1::Button1Click(TObject *Sender)
else
}
...
Bueno, de echo, la clase si estaba creada y añadida al proyecto, pero no la usaba, usaba las variables buffer, cir y datos, creadas directamente dentro de la rutina asiciada al click del boton de "play".
Posterior mente, empece a hacer uso de mi clase, que tiene el siguente aspecto:
Despues, en mi aplicacion, hago lo siguiente:
Código Delphi
[-]
Cefecto efecto(5000,2000,20000);
...
void __fastcall TForm1::Button1Click(TObject *Sender)
{
...
efecto.memoria();
efecto.conftarj();
efecto.reproducir(nombre);
...
Y por ultimo os pongo un trocito de esas tres rutinas, donde yo creo que puede estar el fallo:
Código Delphi
[-]
void Cefecto::memoria()
;
void Cefecto::reproducir(char* nombre)
else
...
}
El fallo que me da es el siguiente:
"Project Project2.exe raised exception class Eaccessviolation with message 'Access violation at address 01193EA6. Write of adress 0119FFEE'. Process stoped. Use step or run to continue. "
Y me aparece cuando llamo por 2ª vez a "reproducir" o cuando cierro mi aplicacion, pero la 1ª vez que llamo a reproducir no me da ningun, fallo, yme reproduce bien, osea, que me esta llenando los buffers correctamente.
¿Alguna idea?¿?¿¿ Muchisimas gracias de antemano. y Feliz Navidad!!
