我已经使用install.bat (分别从jcl和jvcl文件夹)安装了最新的Jedi VCL for Delphi (JVCL3.49),没有错误。问题是当我运行Delphi2010时,我得到了很多关于jvcl bpls中无效入口点的错误。
entry point invalid @jclsysinfo@jclcheckwinversion$qqrri in JvCore140.pbl
我在所有的Jv*.bpl文件中都得到了这个错误,并且总是使用相同的入口点。
我检查过我没有旧的jcl/jvcl文件或jv*.bpl/jc*.bpl文件。我不知道如何解决这个问题。有什么建议吗?
发布于 2017-05-25 18:48:26
例如,JvCore.dpk的一些RTL包的required子句中包含Jcl和JclVcl。这意味着在编译它时,需要使用Jcl.dcp和JclVcl.dcp来获取它所需的过程/类在bpl中的位置的信息。
这些dcp文件大多数情况下(除非另有说明-请参见下一段)位于BPL文件夹旁边的DCP文件夹中。
如果它使用的dcp与它在加载时发现的bpl不兼容,你会得到这些错误。确保在编译器可能找到的任何地方都没有任何旧的bpl和dcp文件。在JCL设置中,您可以指定放置这些文件的位置,而JVCL设置则将它们放在与dcu文件相同的目录中。
此外,如果您安装了不同的Delphi版本,情况可能会变得更糟,因为dcp文件通常没有后缀。如果它放置的目录恰好在PATH变量中,则可能会发现错误的版本。但是,DCP目录并没有被Delphi安装放到PATH中,而只是放到了BPL目录中。
发布于 2017-05-25 19:03:53
(在我写这篇文章的同时,Stefan Glienke已经发布了一个答案,其中包含了更多有用的信息,但我还是会发布它,因为如果你只对一个Delphi版本感兴趣,这很容易测试)
我不确定下面的方法是否适用于您,因为我没有安装D2010来测试它。在步骤4中,您只需使用一个.Dpk文件就可以非常快速地将其签出。
请注意,我总是将BPL、DCP和DCU文件的输出路径设置为Delphi版本安装文件夹下的Lib2文件夹。这样我就知道它们都在哪里了,这样如果出了问题,整理起来就更容易了。
它们都已安装,并且没有收到错误消息。
https://stackoverflow.com/questions/44176708
复制相似问题