删除了D7下的classes.dcu,然后重新编译工程,发现跟未修改Classes.pas前的效果一样
classes.pas中加断点也未中断
如何才能做到重新编译classes.pas
10 个解决方案
#1
顶
#2
楼主用错马甲了吧。修改了VCL源码加入到工程中,需要去掉运行时包编译才会有效果。
#3
如何去掉运行时包?
#4
在工程中使用了TStringList类,TStringList将空格也当做了Delimiter,所以修改了Classes.pass中的SetDelimtedText方法
不知如何使得修改后的Classes.pas生效
#5
Project-->Options-->Packages-->取消 Build with runtime packages 前面的对钩
这是针对D7的设置,其他版本路径略有差异。
这是针对D7的设置,其他版本路径略有差异。
#6
你的小红花怎么搞来的。
单纯为了StringList的Delimiter问题就修改Classes.pas,是得不偿失的。你只需要把关键的那个函数覆盖即可。
#7
是一个exe工程,这里一直是将bpl编译到exe里的,没有打过勾
#8
想起来了,Delphi中还需要将修改后的.pas文件复制到Lib目录下,然后关闭Delphi重新打开,再去编译你的工程。
#9
搞定了,修改后的pas如果不放入lib下,找不到,无法编译
#10
奇怪的是,为何我开始时删除了D7下的classes.dcu还能编译工程
现在删除后居然报错找不到classes了
否则也不会发这个帖子了
现在删除后居然报错找不到classes了
否则也不会发这个帖子了
#1
顶
#2
楼主用错马甲了吧。修改了VCL源码加入到工程中,需要去掉运行时包编译才会有效果。
#3
如何去掉运行时包?
#4
在工程中使用了TStringList类,TStringList将空格也当做了Delimiter,所以修改了Classes.pass中的SetDelimtedText方法
不知如何使得修改后的Classes.pas生效
#5
Project-->Options-->Packages-->取消 Build with runtime packages 前面的对钩
这是针对D7的设置,其他版本路径略有差异。
这是针对D7的设置,其他版本路径略有差异。
#6
你的小红花怎么搞来的。
单纯为了StringList的Delimiter问题就修改Classes.pas,是得不偿失的。你只需要把关键的那个函数覆盖即可。
#7
是一个exe工程,这里一直是将bpl编译到exe里的,没有打过勾
#8
想起来了,Delphi中还需要将修改后的.pas文件复制到Lib目录下,然后关闭Delphi重新打开,再去编译你的工程。
#9
搞定了,修改后的pas如果不放入lib下,找不到,无法编译
#10
奇怪的是,为何我开始时删除了D7下的classes.dcu还能编译工程
现在删除后居然报错找不到classes了
否则也不会发这个帖子了
现在删除后居然报错找不到classes了
否则也不会发这个帖子了