1.为什么我的程序在用静态库连接时工作不正常,而在用共享库连接时却工作正常?2.我的程序在调用打印预览对话框时,点工具栏的[关闭]按钮没事,对话框正常关闭,而点右上角的[X]时却程序出错?

解决方案 »

  1.   

    用静态库连接时,只要用LoadString加载所有系统预定义的字符串ID, 如AFX_IDS_XXX等,时,就出错.用动态库没事
      

  2.   

    第1个找到原因了,是因为没有在资源文件中包含系统预定义资源afxPrint.rc,导致静态执行错误.其实在原先找的参考资料里人家已经交代了,因为是E文没耐心看完,汗一个...第2个没找到原因,资料也没说,但是对付过去了. 基本上确定点[X]的时候,系统调用了两次销毁同一个窗口的操作.我用pframe->ShowWindow(HIDE) 代替了pframe->DestoryWindow(), 这种引鸠止渴的方法.
    原先以为内存会随着打印预览次数的增加而疯涨, 打开任务管理器却没发现什么动静,有一种偷了东西没被发现的感觉...
      

  3.   

    你可以先判断一下,要是不为null然后销毁了,你这样也行,不过好象也有点问题