|
|

楼主 |
发表于 2005-11-16 16:21:00
|
显示全部楼层
Re:各位大虾!求你们了!!!这一次帮我。。。!
谢谢楼4!
哇,终于找到了原因,太高兴了!
本来下面的这几行:
LPDIRECTDRAW7 pDD7;
LPDIRECTDRAWSURFACE7 pPSur;
LPDIRECTDRAWSURFACE7 pBBuf;
LPDIRECTDRAWSURFACE7 pOPla;
DDSCAPS2 caps;
DDSURFACEDESC desc;
HRESULT result;
改写为:
LPDIRECTDRAW pDD7;
LPDIRECTDRAWSURFACE pPSur;
LPDIRECTDRAWSURFACE pBBuf;
LPDIRECTDRAWSURFACE pOPla;
DDSCAPS caps;
DDSURFACEDESC desc;
HRESULT result;
就正常编译了!
但我在网上找到的好多例子中采用第一种方法声明DD7。
那“LPDIRECTDRAW7 pDD7;” 和 “ LPDIRECTDRAW pDD7;” 有什么区别吗?
还有一个:
1)result = DirectDrawCreate(NULL,&pDD7, NULL);
2)result = DirectDrawCreateEx(NULL, (VOID**)&pDD7, IID_IDirectDraw7, NULL);
这两个都是创建DD对象,但第二个就我的机子上不能编译,第一个就编译通过。
这两个有什么区别?! |
|