Frage

I just realized that

_CrtSetDbgFlag( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF );

Is not reporting leaks anymore. Id track down that the cause is any call to the IXAudio2 interface, a com interface of the dx sdk XAudio2.

If I remove the calls to the interface, it works again. Anyone have any idea of what might be going on? Is it just an enormous bug? I tested it with the sdk examples, to be sure Im not the one doing things I shouldnt, and still the same problem exist.

Im under windows 7 using the june 2010 DX SDK. This is pretty "THE" problem in my opinion..how can a library prevent this to work..I Tried setting the flag after the calls to the interface, but its no use.

Can anyone using XAudio2 report its own experience to compare please?

-edit- Found ppl with the same issue here:

http://xboxforums.create.msdn.com/forums/t/67031.aspx

Still no solution.. Found related info here:

http://social.msdn.microsoft.com/Forums/vstudio/en-US/8cb1847d-3218-4610-9cb8-6905bd255ff5/no-dllprocessdetach-after-calling-playsound-on-windows-7-64bit

In the end a MS person says they fixed on win8, but they arent talking about XAudio2 in the thread.

War es hilfreich?

Lösung

The problem is "solved" by loading the SetupApi.dll yourself in your code. Thus, its obviously a bug;

LoadLibrary("setupapi.dll");// solves the XAudio2 leaks problem
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top