Original Post
Hi, Is this function accurate? I've tried to remove/add surfaces just to see if its value is changing but it isn't. Why is that? am I doing it correctly. The SDK shows // For this example, the lpDD variable is a valid // pointer to an IDirectDraw interface. LPDIRECTDRAW7 lpDD; DDSCAPS2 ddsCaps2; DWORD dwTotal; DWORD dwFree; HRESULT hr; hr = lpDD->QueryInterface(IID_IDirectDraw7, &lpDD); if (FAILED(hr)) return hr; // Initialize the structure. ZeroMemory(&ddsCaps2, sizeof(ddsCaps2)); ddsCaps2.dwCaps = DDSCAPS_TEXTURE; hr = lpDD->GetAvailableVidMem(&ddsCaps2, &dwTotal, &dwFree); if (FAILED(hr)) return hr; and this is what I'm actually doing. I'll just have to get the value stored in dwFree right? Still not working! HELP! THANKS IN ADVANCE!!