CnPack Forum » CnPack IDE 专家包(CnWizards) » CnWizards 在 Win 10 RS4 Build 17035版本下启动出错,显示资源不足


2017-11-11 23:25 yinsim
CnWizards 在 Win 10 RS4 Build 17035版本下启动出错,显示资源不足

[b]测试环境:[/b]
CnWizards版本:CnWizards 1.1.3.915 Unstable
Windows 版本:Windows 10 RS4 预览版 Build 17035 x64
Delphi 版本: Delphi DX 10.2 update 1

问题描述:
CnWizards 在 Delphi 启动时报错,显示系统资源不足,并无法在IDE中注册。

[b]原因分析:[/b]
CnDesignEditorUtils.pas 中的 procedure Initialize 过程会使用 LoadImage 函数来加载 Windows 系统中复选框的OEM图像资源。并在稍后进行一些运算来确定 CnWizards 一些界面中的勾选与未勾选图像的高度与宽度。
但是某些原因在此版本(17035)使用LoadImage获取后的OBM_CHECKBOXES的图像资源的高度与宽度均为1,而在之后的运算中Check与Unchecked的高度与宽度将变为负数。

[b]临时解决方案:[/b]
由于暂时不能确定究竟是Windows RS4的 Bug 还是一项计算中的变更(?),所以暂时可以直接注释掉该 Initialize 过程在此单元中初始化段的引用。
发贴在此,供也有此问题的人参考。

2017-11-13 15:05 Passion
非常感谢详尽的调查,我也看一下是否能避免。

2017-11-14 16:31 Passion
目前我们在init部分也加了一层保护,没有加载到系统图片时,自己塞两个图片进去凑合着用了。:lol:
此保护机制将在下一个版本集成。

2017-11-14 21:21 yinsim
老刘反应好快,谢谢对应。
应该是Bug了,反馈中心已经有很多人反馈了这个问题,而且这个影响面很广,不少的程序,甚至很多Inno Setup制作的安装程序连项的复选框也没有办法显示。

2017-11-15 12:02 Passion
看来API不能全信。:lol:

页: [1]


Powered by Discuz! Archiver 5.0.0  © 2001-2006 Comsenz Inc.