【发布时间】:2018-04-19 15:27:30
【问题描述】:
我们使用的是 TeeChart Pro v2012.07.121105 32 位 VCL,刚刚升级到 Delphi Tokyo 10.2.3。我们维护自己的包,有一段时间没有升级 TeeChart,所以我希望这里的人能给我一些建议。
当我们的 TeeChart 包在 Delphi IDE 中启用时,从工具菜单启动 GetIt 包管理器会导致在 GetIt 对话框出现之前出现 Invalid Typecast 异常。关闭错误对话框后,GetIt 会出现,但不包含任何包。
如果我禁用我们的 TeeChart 包,无效类型转换将不再发生,GetIt 会按预期启动。在我们禁用所有包的情况下,启用 TeeChart 是唯一引入 Invalid Typecast 的包。
是否有人知道自 2012 年以来 TeeChart 中与与 Delphi IDE 集成的集成相关的更改或修复?
谢谢
【问题讨论】:
-
我认为如果你向 Embarcadero 报告这个问题应该会更好,因为很有可能问题实际上出在 Getit 包管理器的某个地方。我怀疑这是因为否则,当您尝试编译任何使用您的 TeeChart 组件的应用程序时,您应该会收到类似的错误。
-
我不记得 GetIt 包管理器上的任何错误,并且在 TeeChart 主存储库中找不到引用它的修复程序。如您所知,Steema Software 无法支持如此旧的和修改过的软件包。如果您无法升级您的 TeeChart 版本,正如@SilverWarior 所说,您可以咨询 Embarcadero 是否可以在他们身边做点什么。
-
我目前的怀疑是我们的 TeeChart 版本定义的类型与 GetIt 包管理器源中定义的类型有名称冲突。当我们的 TeeChart 包被加载时,TeeChart 中的类型优先。我希望这能唤起 David 或 Steema 的其他人的记忆,并且在 TeeChart 中重命名冲突类型将是一个简单的解决方案。不幸的是,我不知道导致 Invalid Typecast 的类型的名称。
-
@JonRobertson 没有导致问题的类型的名称,也无法访问您修改后的 TeeChart 源代码,恐怕我们都无能为力,因为我们只能猜测可能是什么问题。因此,请编辑您的问题并将该信息添加到其中。
-
我们的更改仅清理提示和警告。我们没有升级是因为我们没有理由这样做,并且我们避免了升级第三方库的风险。类型名称冲突必须最初由 TeeChart 实现,并且可能由 TeeChart 在较新版本中更改以解决此特定问题。如果我知道冲突类型的名称,我们会自己更改它,我不会发布问题。
标签: delphi teechart delphi-10.2-tokyo