CnPack Forum


 
Subject: 关于CnWizards的2个BUG,我发现的
wh_mimi
新警察
Rank: 1



UID 506
Digest Posts 0
Credits 4
Posts 4
点点分 4
Reading Access 10
Registered 2004-9-3
Status Offline
Post at 2004-9-3 10:58  Profile | Blog | P.M.  | QQ
关于CnWizards的2个BUG,我发现的

昨天晚上发现CnWinzards这个专家控件,对国人有了自己拿的出手的好东东感到很高兴,所以我先把控件帮助中的开发人员列表仔细的看了一遍,随后稍稍试用了一下,发现2个BUG,当然或许与我的机器有关

我的机器配置:IBM T22, PIII900,384M,20G,14.1TFT,分辨率是1024×768(注意)

首先发现BUG1:菜单CnPack-窗体设计专家-下面的菜单显示不全,很大一部分显示到屏幕上面去了,我想总不能大家都用17寸液晶吧,虽然可以用浮动工具条代替,单这也总算是一个BUG了

BUG2:我的机器是新装的win2000pro,Delphi 7除了装了几个专家控件外,没有装其它第3方控件,主要是CodeExpress,GExperts,SourceConneXion,在安装CnWinzards之后发现关闭Delphi7时老是提示出错,主要表现为出现2个错误对话框,第一个错误提示:“0X036B7924'指令引用的”0X036B7924”内存。该内存不能为read,确定后第2个错误提示:Exception EAccessViolation in module rtl70.bpl at 0X036B7924 . Access violation at address 0X036B7924.read of address 0X036B7924. 即便是刚打开delphi7马上就关闭都会出现这个问题,我卸载这个CnWinzards之后就没有错误了,我用了2个版本的cnwizards都一样,包括这个最新的版本6。9的

不知道我的描述是不是很清楚,如果没看懂的话,我的QQ 150383457,支持国人控件,我是第一次发帖子报告错误啊
Top
zjy
管理员
Rank: 9Rank: 9Rank: 9



UID 2
Digest Posts 6
Credits 2385
Posts 1543
点点分 2385
Reading Access 102
Registered 2002-12-16
Location China
Status Offline
Post at 2004-9-3 13:46  Profile | Site | Blog | P.M. 
关于菜单项

多谢您对CnWizards的支持和错误报告!

窗体设计专家的菜单在D7下显示不全确实是个问题。其实在D5/6下都是可以正常显示的,D7的主菜单因为换成了XP风格,菜单变长了,如果下面显示不完就会放到屏幕上面去,而且D7的菜单还不支持折叠,比较头痛,也可以算D7的小Bug吧。因为对开发人员来说,在任何条件下正确显示菜单(可以滚动、折叠嘛)是菜单控件的责任:)

不过还是有一个变通的办法解决D7下菜单的问题:CnWizards的菜单顺序是可以调整的,在“设置|专家设置|高级|排序”里,可以把这个菜单项调到最上面去,再看看效果吧。




Zhou JingYu
CnPack Administrator
http://www.cnpack.org/
Top
zjy
管理员
Rank: 9Rank: 9Rank: 9



UID 2
Digest Posts 6
Credits 2385
Posts 1543
点点分 2385
Reading Access 102
Registered 2002-12-16
Location China
Status Offline
Post at 2004-9-3 14:06  Profile | Site | Blog | P.M. 
关于退出时的错误

挂在IDE中的专家,因为权力太大了,一个小小的bug,都有可能导致IDE出错。根据您的情况,我怀疑是CodeExpress与CnWizards之间的冲突,不知道您使用的CodeExpress是什么版本的?我用最新的2.2版测试了一下,没发现出错的问题,Hubdog已经把CodeExpress对国人免费了,可以此下载最新版本:
http://hubdog.csdn.net/Download/dlIndex.htm

CnWizards里有几个专家如组件前缀、属性批量修改等经Hubdog授权移植过来的(Hubdog甚至将CodeExpress的大部分代码授权我们使用了),由于这两个专家在底层使用了同样的技术,有可能因装载顺序问题导致冲突。建议您禁用CodeExpress再测试一下。

如果有时间,还想请您帮我们定位一下具体出错的专家,可使用以下方法:
1、创建一个D7的快捷方式,在命令行尾加一个参数 -swcn,或每次启动IDE时按住Shift键,可以在专家初始化前打开启动设置窗口。
2、在启动窗口中点击“取消所有选择”按钮,再点“加载选择的专家项”,此时进入IDE后所有子专家都不会创建。关闭IDE看看会不会出错,如果出错,说明问题出在专家框架上。
3、如果前一步没有出错,再次启动IDE,在专家列表中选中前半部分的专家,再启动测试一下是否出错,如果出错,说明问题在刚才选择的前半部分的专家中,反之下次启动时选择另外一半专家进行测试。这样用二分法测试几次就可以找到导致专家出错的罪魁祸首了。

另外,我们还可以给您提供或由您自己编译一份调试版的专家,运行时会生成日志文件,可反馈给我们分析。




Zhou JingYu
CnPack Administrator
http://www.cnpack.org/
Top
zjy
管理员
Rank: 9Rank: 9Rank: 9



UID 2
Digest Posts 6
Credits 2385
Posts 1543
点点分 2385
Reading Access 102
Registered 2002-12-16
Location China
Status Offline
Post at 2004-9-3 14:11  Profile | Site | Blog | P.M. 
关于错误报告

CnWizards中提供了一个错误报告向导,如果有错误或建议的话,可以使用它来进行反馈。




Zhou JingYu
CnPack Administrator
http://www.cnpack.org/
Top
Passion (LiuXiao)
管理员
Rank: 9Rank: 9Rank: 9


UID 359
Digest Posts 19
Credits 6814
Posts 3580
点点分 6814
Reading Access 102
Registered 2004-3-28
Status Offline
Post at 2004-9-12 22:07  Profile | Blog | P.M. 
关于和CodeExpress冲突的问题,可以说是IDE的一个Bug。我用D5进行了测试,D5先加载CnWizards,再加载CodeExpress,然后退出时先释放CnWizards,再释放CodeExpress。而俩专家正巧都有一个对Screen.OnActiveFormChange的挂接(挂接指记录原事件处理器,然后用自己的事件处理器替换它,卸载时用记录的旧指针恢复)。导致了出错:

最初时:          Screen.On = nil;
CnWizards挂接时:  Screen.On := Cn; 并记录旧的nil
CodeExpress:      Screen.On := CE; 并记录旧的 Cn

CnWizards释放时:  Screen.On := nil; 恢复nil
CodeExpress:      Screen.On := Cn; 恢复旧记录

这样导致后来Screen引用了已经不存在的Cn的事件处理器,所以引发错误。
要改正这个问题还挺麻烦,需要双方都配合才行。
Top
zjy
管理员
Rank: 9Rank: 9Rank: 9



UID 2
Digest Posts 6
Credits 2385
Posts 1543
点点分 2385
Reading Access 102
Registered 2002-12-16
Location China
Status Offline
Post at 2004-10-7 19:55  Profile | Site | Blog | P.M. 
我们已经使用了新的方法来解决前述与 CodeExpress 的冲突,请关注下一版本的发布。

该问题相关的任务单见:
http://www.cnvcl.org:8008/cnpack/tktview?tn=105,0




Zhou JingYu
CnPack Administrator
http://www.cnpack.org/
Top
 




All times are GMT++8, the time now is 2024-10-12 18:08

    本论坛支付平台由支付宝提供
携手打造安全诚信的交易社区 Powered by Discuz! 5.0.0  © 2001-2006 Comsenz Inc.
Processed in 0.008927 second(s), 7 queries , Gzip enabled

Clear Cookies - Contact Us - CnPack Website - Archiver - WAP