现在的位置: 首页 > 综合 > 正文

获取显卡内存

2013年09月03日 ⁄ 综合 ⁄ 共 574字 ⁄ 字号 评论关闭
#include <ddraw.h>

#pragma comment(lib, "guids.lib")

void CGetDisplayMemDlg::OnButton1() 
{
	// TODO: Add your control notification handler code here

	LPDIRECTDRAW2 lpdd;
	HRESULT ddrval;
	
	CoInitialize(NULL);	
	
	ddrval = CoCreateInstance(CLSID_DirectDraw,
		NULL, CLSCTX_ALL, IID_IDirectDraw2, (void**)&lpdd);
	
	
	if(!FAILED(ddrval))
	{
		ddrval = IDirectDraw2_Initialize(lpdd, NULL);
	}
	
	DDCAPS ddcaps;
	
	ddcaps.dwSize = sizeof DDCAPS;
	lpdd->GetCaps(&ddcaps, NULL);
	
	lpdd->Release();
	
	DWORD dwMem = ddcaps.dwVidMemTotal;

	int iMem = dwMem/1008/1008;

	CString strMem;
	strMem.Format(_T("display memory is %d MB"),iMem);

	AfxMessageBox(strMem);
	
	CoUninitialize();
	
}

抱歉!评论已关闭.