m_pd3dDevice为是一个device class,相应代码如下:LPDIRECT3DDEVICE9
BOOL SaveViewToFile(CString strFileName)
{
IDirect3DSurface9 *back = NULL;
// 获得BackBuffer的D3D Surface
m_pd3dDevice->GetBackBuffer(0, 0, D3DBACKBUFFER_TYPE_MONO, &back);
// 保存成BMP格式
D3DXSaveSurfaceToFile(strFileName, D3DXIFF_BMP, back, NULL, NULL);
// 释放Surface,防止内存泄漏
SAFE_RELEASE(back);
return TRUE;
}
PS : 使用 D3DXSaveSurfaceToFile需要添加 #include <d3dx9.h>.
参考:http://www.cppblog.com/lovedday/archive/2007/05/11/23937.html