Original Post
Hi everyone,
I have a question: Is it necessary to do anything other than call the Release() function to free up an IDirectDraw7 interface?
The problem is the following: When I run the DirectX 8 debug APIs, with hardware mode disabled, I always get messages (in the Visual Studio output window, of course) about having memory still allocated when the program finishes. To isolate the problem, I wrote a simple problem that calls DirectDrawCreateEx(), and then _immediately_ releases the IDirectDraw7 object with a Release() call. With full debugging messages turned on, I get the expected responses about the driver starting up, etc..., then about it shutting down, and finally a line saying that the driver is FREE. Then the program exits, and in the output window there''s always a set of error message saying that there is memory still allocated. I''m trying to write a well-behaved application, and this is _really_ holding me up.
Interestingly enough, however, when I turn ON hardware support, I don''t get the same memory error message from DirectX. It''s as though the hardware version thinks I''m doing everything correctly, but the software version doesn''t.
What am I doing wrong? Is this a DirectX bug? Does anyone know if there''s a place on the Microsoft site where they post reported bugs? Can somebody check to see if they get the same problems? Any other ideas?!!??!!!
Please help!!!