首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

DX中关于lock函数的有关问题

2013-03-22 
DX中关于lock函数的问题在学习用DX开发游戏的时候遇见一个很重要的lock函数,在使用的时候出现了问题用到的

DX中关于lock函数的问题
在学习用DX开发游戏的时候遇见一个很重要的lock函数,在使用的时候出现了问题

用到的两个变量在之前声明为
LPDIRECTDRAWSURFACE7lpddsprimary= NULL;
DDSURFACEDESC2ddsd;

用的时候是这样写的
lpddsprimary->Lock(NULL, &ddsd, DDLOCK_SURFACEMEMORYPTR | DDLOCK_WAIT, NULL));
好多次断点调试都是到这步会出现问题

问题总是说:未处理的异常: 0xC0000005: 读取位置 0x00000000 时发生访问冲突,
我觉得可能是指针或者是内存没初始化之类的,但是真心不知道该怎么弄了。。。


求高手们给个提示


[解决办法]
应该是lpddsprimary或者是ddsd未被正确的初始化。
[解决办法]
lpddsprimary初始化为NULL,之后呢?
我感觉是之后没有获取/创建对象就直接Lock了。。。
[解决办法]
这是ddsd的初始化,没有看到lpddsprimary的初始化。

引用:
引用:lpddsprimary初始化为NULL,之后呢?
我感觉是之后没有获取/创建对象就直接Lock了。。。

初始化null后有
C/C++ code?1234ZeroMemory(&ddsd, sizeof(DDSURFACEDESC2));ddsd.dwSize        = sizeof(DDSURFACED……

[解决办法]
引用:
引用:这是ddsd的初始化,没有看到lpddsprimary的初始化。

引用:引用:lpddsprimary初始化为NULL,之后呢?
我感觉是之后没有获取/创建对象就直接Lock了。。。

初始化null后有
C/C++ code?1234ZeroMemory……


有初始化。但是,NULL不是一个有效地对象。

热点排行