在xp下,程序没有什么问题,但运行到98和me下,自己绘制的东西会出问题,一般都是CreateCompatibleDC调用失败,返回NULL,可能是系统的GDI资源被消耗完了吧。在me和98的调度环境下,我可以看到有些GDI访问违例。但我能查到的申请的GDI资源都及时释放了有没有什么工具来查哪里资源没有释放啊?或者谁有经验教我一把,谢谢!

解决方案 »

  1.   

    用GetLastError看看是什么错误造成的。
    检查GDI泄露也可以用BoundsChecker的。
      

  2.   

    boundchecker检查是否有内存泄漏
    此外,vc也会提示的
      

  3.   

    BoundCheck查不出来,我试过了。。
      

  4.   

    GDI32.dll, access violation,查不出来的不知道在哪出问题了,最后是引出kernal32.dll出错,机器都挂掉了!!
      

  5.   

    有access violation?恐怕不是GDI泄露的问题。
    有没有用GetLastError看是什么错误?
      

  6.   

    怎么用GetLastError啊?在调度的时候,也不一定是某一行一定出错。。我定位到了那个IPicture->Render有时会报这个异常,但它的返回值却是0,成功的。。这个函数负责把一个背景图画到窗口上