一个项目约有几百个窗体,当窗体少的时候编译没有关问题,随着窗体的增多编译开始出现有关问题,难道delphi 有窗体限制吗
一个项目约有几百个窗体,当窗体少的时候编译没问题,随着窗体的增多编译开始出现问题,难道delphi 有窗体限制吗?
编译时有时出现internal error la30错误。有时出现rlink.dll 无法打开dfm文件错误。有时出现out of memery 错误。请问高手,这到底是怎么回事啊?是不是delphi的编译器问题,该如何解决?如果是窗体太多了,怎么做成模块化的。
------解决方案--------------------
做成DLL
------解决方案--------------------
是不是项目已开始创建太多
------解决方案--------------------
delphi默认在应用初始化的时候建立窗体不释放的,只是hide了,建的过多可能内存不够了吧,建议你在需要的时候才create窗体,不需要直接destroy。
------解决方案--------------------
这么多窗体没有同一个类的吗?
------解决方案--------------------
应该不会出现这种问题吧
------解决方案--------------------
呵呵,确实如此
封装成多个DLL
------解决方案--------------------
肯定是bpl简单
------解决方案--------------------
这个属于delphi的内部错误,当你的项目过大时出现这样的编译错误大部分与你无关,这么多窗体你应该考虑你一下你
的设计模式
------解决方案--------------------
靠, 估计是你在 .dpr中默认创建了 N个窗体
Application.CreateForm(TMainform, Mainform);
Application.CreateForm(....)
Application.CreateForm(....)
Application.CreateForm(....)
这样不死就怪, 还有BDS2006 在编译的时候有些内存泄露, 我的也是. 但是我的项目组的
项目太多了, 我的电脑配制也不是很好, 但是在NB里就没问题.
------解决方案--------------------
我以前好像我问过这样一个类似的问题
要是分模块,可以做成DLL,BPL
再就是,可能某些窗体的代码有错误,
开发的时候先单个开发,然后再合起来,我当时就是这样做的
编译时有时出现internal error la30错误。有时出现rlink.dll 无法打开dfm文件错误。有时出现out of memery 错误。请问高手,这到底是怎么回事啊?是不是delphi的编译器问题,该如何解决?如果是窗体太多了,怎么做成模块化的。
------解决方案--------------------
做成DLL
------解决方案--------------------
是不是项目已开始创建太多
------解决方案--------------------
delphi默认在应用初始化的时候建立窗体不释放的,只是hide了,建的过多可能内存不够了吧,建议你在需要的时候才create窗体,不需要直接destroy。
------解决方案--------------------
这么多窗体没有同一个类的吗?
------解决方案--------------------
应该不会出现这种问题吧
------解决方案--------------------
呵呵,确实如此
封装成多个DLL
------解决方案--------------------
肯定是bpl简单
------解决方案--------------------
这个属于delphi的内部错误,当你的项目过大时出现这样的编译错误大部分与你无关,这么多窗体你应该考虑你一下你
的设计模式
------解决方案--------------------
靠, 估计是你在 .dpr中默认创建了 N个窗体
Application.CreateForm(TMainform, Mainform);
Application.CreateForm(....)
Application.CreateForm(....)
Application.CreateForm(....)
这样不死就怪, 还有BDS2006 在编译的时候有些内存泄露, 我的也是. 但是我的项目组的
项目太多了, 我的电脑配制也不是很好, 但是在NB里就没问题.
------解决方案--------------------
我以前好像我问过这样一个类似的问题
要是分模块,可以做成DLL,BPL
再就是,可能某些窗体的代码有错误,
开发的时候先单个开发,然后再合起来,我当时就是这样做的