我的Directdraw主表面无法创建是怎么回事儿?
如下代码,DDSCL_NORMAL模式下将无法成功建立
ddsd.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE | DDSCAPS_COMPLEX | DDSCAPS_FLIP;
类型的表面。
有人研究过吗???请指教!
if (FAILED(DirectDrawCreateEx(NULL, (void **)&lpdd, IID_IDirectDraw7, NULL)))//创建DirectDraw对象,指向DirectDraw7接口的指针放在ldpp
return(0);
lpdd->SetCooperativeLevel(main_window_handle, DDSCL_NORMAL);//设置协作关系
memset(&ddsd,0,sizeof(ddsd));
ddsd.dwSize=sizeof(ddsd);
//enable valid fields
ddsd.dwFlags = DDSD_CAPS|DDSD_BACKBUFFERCOUNT;
// request primary surface
ddsd.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE | DDSCAPS_COMPLEX | DDSCAPS_FLIP;
ddsd.dwBackBufferCount = 1;
// create the primary surface
if (FAILED(lpdd->CreateSurface(&ddsd, &lpDDprimary, NULL)))
return(0);
不知道为什么创建不成功?请大声帮忙看看
[解决办法]
here http://technet.microsoft.com/en-us/query/aa451285