   SlimDx and HardwareCaps
  I'm trying really hard to detect the amount of memory on the graphics card using SlimDx (Feb 2010 release, C#). I would like to log it at startup of my app. I have browsed all Capabilities of my device, but so far, no luck. After a lot of searching the web, most sources points to an (old) DirectDraw reference:Microsoft.DirectX.DirectDraw.Device device = new ...Microsoft.DirectX.DirectDraw.GetCapsStruct caps = device.GetCaps;string memoryDescription = caps.HardwareCaps.VideoMemoryTotal.ToString();However, I haven't been able to find it in the SlimDx Device.Capabilities property (although I may of course have missed it).Can anyone point me in the right direction?   
  There is no API in D3D that can do it.  Even the ddraw7 interface isn't reliable (multiple devices can be present, you cant pass a device id GUID you get from d3d9 into the d3d7 api etc).dxdiag uses other means to get this information (probably reading registry or looking at the address space mappings of video devices in the PCI memory space)In addition other apps can use its memory (aside from say exclusive fullscreen mode) while you are so its not really going to help even knowing the number.   ;Quote:Original post by ZonerThere is no API in D3D that can do it.  Even the ddraw7 interface isn't reliable (multiple devices can be present, you cant pass a device id GUID you get from d3d9 into the d3d7 api etc).dxdiag uses other means to get this information (probably reading registry or looking at the address space mappings of video devices in the PCI memory space)In addition other apps can use its memory (aside from say exclusive fullscreen mode) while you are so its not really going to help even knowing the number.WMI has functions for querying for this information. It does not necessarily mean that the information is accurate though.   