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的初始化。