我创建了一些delphi组件,它们包含在一个bpl文件中。最近,我注意到构建bpl (安装了bpl)会导致IDE崩溃,只有"MyComponents.bpl_unloaded“例外。但是,如果没有安装bpl,则不会出现此问题。我无法捕捉到这个异常,我不知道它是在哪里引发的(手动的,我没有调用卸载库或其他)。
在运行时和设计时,我的所有组件都能正常工作。ProjectGroup可能只包含有/没有我的组件的包或项目,但是情况是一样的。在我的项目中,我使用其他vcl组件(使用Vcl.StdCtrls、Vcl.ExtCtrls、Vcl.Controls、Vcl.Forms、Vcl.AppEvnts、Vcl.Imaging.Jpeg、Vcl.Graphics)。在包文件部分,"requires“包含rtl、vcl、vclimg、VirtualTreesR、Jcl。
我怎样才能纠正这个问题?提前感谢
发布于 2014-12-09 10:14:08
在IDE中安装设计时包时,必须在重新构建它时卸载它。它必须先卸载,然后重新构建,然后重新加载。
显然,卸载阶段将导致异常被引发。我们不能确切地说明为什么会出现此异常,但下一步是进行一些调试。实际上,调试IDE是可能的。您可以打开IDE的第二个实例,并从第一个实例将调试器附加到第二个IDE实例。然后,您可以从第二个IDE实例卸载包,如果设置正确,则应该在引发异常的地方中断。
作为交互式调试的替代方法,您可以使用像madExcept这样的工具在异常点生成详细的堆栈跟踪。光是这一点就足以让你找到问题所在。
https://stackoverflow.com/questions/27376099
复制相似问题